POST
|
I'm trying to do some capacity planning for our GeoEvent server to handle AVL data. For those of you that have integrated GeoEvent with your AVL systems, what is the average frequency of messages from each vehicle to the AVL hosting server? For example, does each vehicle send a message every 5 seconds? every 10 seconds? every 60 seconds Actually I guess there are 3 levels of detail on message frequency across the data pipeline: How often does each vehicle's device obtain a GPS location? How often does each vehicle's device send position data to the hosting server? How often does GeoEvent query the hosting server to obtain new data? I'm just trying to get a feel for what the industry standard is these days. Thank you for any insights you can provide -Andrew
... View more
09-30-2019
07:33 AM
|
0
|
2
|
1672
|
POST
|
Thank you Peter, I'll see if I can use that endpoint to extract the logins on a regular basis and aggregate login counts by user in Excel or BI tools to get a general feel for how much staff are using Pro.
... View more
09-18-2019
09:43 AM
|
1
|
1
|
2414
|
BLOG
|
Is there a way to obtain this admin token programmatically via the REST API? Is it different then the token obtained by the/sharing/rest/oauth2/authorize endpoint or the /sharing/rest/generateToken endpoint? I ask because I'm trying to get an ETL tool to retrieve data from the AGOL REST API's portal_history endpoint via my federated admin account, but the authentication documentation for the API sends me in circles for this type of Portal administrative workflow where I just need to connect to the ArcGIS Online Org or Enterprise Portal and query out some details about users, items, licenses, etc. I assume the code is as basic as two lines 1) Submit REST call containing my credentials to obtain the token 2) Submit REST call to the Portal_History endpoint containing my credentials
... View more
09-11-2019
04:36 PM
|
0
|
0
|
2355
|
POST
|
Is there a way through the ArcGIS API (or other tools) to grab detailed Named User ArcGIS Pro license usage statistics from ArcGIS Online? The question I'm trying to answer is, "Out of all the users I've assigned a Pro license to, who's using them and who isn't?" For example, John Smith's ArcGIS Pro was pulling a license from ArcGIS Online for 4 hours on August 26th, and then have that kind of daily detail going back 30, 60, 90 days. I've seen that there is a generic chart of this information in ArcGIS Online if you go to Organization->Status->Apps, and then scroll to the bottom of the page to the "Usage of ArcGIS Pro by Org Members" chart. I'd like to extract this data and use it as a reference in my GIS user reports I'm compiling in Excel. I've inspected the API reference and didn't see a way to grab the numbers. The closest I found is the "Previsioned Listings property of users" which will show you what apps a user has been given a license for. And even then you have to run this for every user in your Org and find out if they have a Pro license assigned. I believe OpenLM has a new tool to do this in their July 2019 release, but I was curious if there is an out of the box way.
... View more
09-04-2019
12:08 PM
|
1
|
3
|
2605
|
POST
|
Thank you. That was the ticket! Here's some new code you can run the Pro python window. Not pretty at all, but it does print the title and list of users from the group. from arcgis.gis import GIS gis = GIS("pro") all_groups = gis.groups.search('1=1') for group in all_groups: members = group.get_members() users_list = members['users'] users_string = ','.join(users_list) print(group.title + '...' + users_string)
... View more
08-08-2019
06:44 AM
|
0
|
0
|
2469
|
POST
|
I am a GIS professional within my organization. I'm trying to write a python script that can access our ArcGIS Online organization to help me automate management the layers and other items I'm responsible for. Some of these layers are not shared publicly and are restricted by groups within the org. I login into our organization with an account federated with our Active Directory. I want the script I'm writing to run at night and obtain info from all my items, so it can't prompt me for a password at runtime. I'm following the instructions in the API help (link here) for how to connect, but I'm running into issues. Specifically I'm using the sample code from the section after the paragraph: "If the configured identity provider is compatible, you may also be able to provide your username and password, along with the client_id for a non interactive login experience using OAuth 2.0, as shown below:" I have Pro 2.4 installed, and I'm using a python environment that has the ArcGIS API for python upgraded to 1.6.2. Here is my code: import arcgis gis = arcgis.GIS("https://myagolorg.maps.arcgis.com", username="MyActiveDirectoryUsername", password="MyActiveDirectoryPassword", client_id='MyAGOLAppClientID') print("Successfully logged in as: " + gis.properties.user.username) When I run this in a Jupyter Notebook, I get a 'module not found error'. ModuleNotFoundError: No module named 'bs4' I googled bs4 and figured out it's a module named BeautifulSoup4. I went back into Pro and added that package to my environment After this install is done I rerun by script, but now I get a variable reference error: UnboundLocalError: local variable 'oauth_info' referenced before assignment Has anyone been able to successfully login to their AGOL org from python API using a federated account and no credentials prompt? If there is another method let me know. I know that a built-in account would be easier but that's not my preference. I know that an app login my work for connecting, but it won't provide access to items that aren't shared publicly. Thank you,
... View more
08-05-2019
08:11 AM
|
3
|
3
|
5486
|
POST
|
Thanks for the response. I think I'm going to put in a support ticket. For me, running print(arcgis.__path__) returns the path to my default environment, even though the cloned environment is shown as the active one in the Pro python package manager.
... View more
07-16-2019
03:03 PM
|
1
|
0
|
684
|
POST
|
I am trying to get going with Jupyter Notebooks and the ArcGIS API for Python, but I'm having some problems with the version installed with ArcGIS Pro 2.4. I know that in Pro you can create multiple Python environments, and you can activate which one is used by the project via the GUI by going to Project->Python. I saw that Pro 2.4 installs the ArcGIS API version 1.6.1...however the API website shows 1.6.2 is the latest. I created a clone of the default environment and upgraded the API using these instructions. When I go back into Pro I can see the clone environment has arcgis api version 1.6.2, and it is the active version for my project. The problem is, when I open the Jupyter Notebooks provided on the Start Menu under ArcGIS, I believe it is using the default environment and not my upgraded one. I don't see anything on the Jupyter Notebook interface that tells me which environment is being used. To check, I created a new notebook and entered the following code: import arcgis print(arcgis.__version__) The result says 1.6.1, therefore I assume it's using the default environment. Any advice on how to get the Jupyter Notebook to use my clone environment? I'm trying to stick with the out of the box tools installed with Pro
... View more
07-16-2019
08:21 AM
|
0
|
2
|
1032
|
POST
|
I'm trying to setup a new 10.6.1 GeoEvent server to read AVL data. I want to filter it to only vehicles that have a string attribute that starts with the letters AW, but ^AW isn't returning any results. Any recommendations on what to fix? Here's what it looks like in the GeoEvent Filter configuration screen:
... View more
03-12-2019
07:43 AM
|
0
|
1
|
651
|
POST
|
Thank you! I used the "Settings Keys" section here: (https://github.com/Esri/arcgis-pro-sdk/wiki/ArcGIS-Pro-Registry-Keys#settings-keys-1). Manually created a new registry key and pasted in my folder path. Appears to work. If I open Pro and remove the add-in, then close and reopen it appears. Will try on Monday with a colleague logging in for the first time.
... View more
02-01-2019
03:09 PM
|
0
|
0
|
518
|
POST
|
I'm setting up a shared PC with ArcGIS Pro, sort of like a computer lab PC. I have an Add-In that I want to be turned on by default for every new user that logs in and starts up Pro. First I placed the add-in in a folder on the PC all users can access. Then when I logged into Pro I was able to go to Project->Add-In Manager->Options, then choose "add folder..." and point to that folder. Now that I've done the work to set that up, is there a way to make that add-in folder applied permanently for all Pro users on that machine?
... View more
02-01-2019
12:49 PM
|
0
|
2
|
595
|
POST
|
Okay, I think I see the issue. I do not get those options to create a view or alter time settings on the SBDS layer I created in GeoEvent manager. To be specific, in GeoEvent Manager go to Site->Spatiotemporal Big Dat Stores->Create Data Source. I guess GeoEvent created SBDS layers are not considered hosted layers. To test I created a second SBDS layer a different way...by going into Pro and running GeoAnalytics->Copy to Data Store on the sample data housed on my PC. That creates a portal item labeled as hosted and does provide the "time settings" and "create view" options. Perhaps if I create a hosted SBDS layer first via Pro, I can get GeoEvent to write to it. Something to try later. Regardless, given this little discrepancy, sounds like we'll have to put some forethought into how we want to use any data from GeoEvent for analysis before we put any GeoEvent services into production. Thank for walking through this example with me. This really helps me understand how these servers fit into solutions for our business needs. -Andrew
... View more
10-12-2018
12:33 PM
|
0
|
0
|
883
|
POST
|
Thank you Sarah, That helps to know the projection I'm aiming for so I can design GeoEvent processes to do as little as possible. Would hate to project to State Plane only to have the data auto-reprojected back. I'm using fresh 10.6.1 servers and Pro 2.2.3. I've now redeployed a default GeoEvent SBDS output layer and have some sample data populated. When I try to create a space time cube from it using the GeoAnalytics toolbar in Pro, I see that it was just giving me a warning about the coordinate system and that the tool will apply the "World Cylindrical Equal Area" projection. However, right after that it bombed out because the input layer is time interval based, and that is what caused it to error out. I pasted the results window text below. The data I'm using for my sample are city 311 service request tickets. There are 500,000 records covering requests for all the various City services and we have history for the last 5 years, so it seemed like a good candidate to try spatiotemporal hosting on, I used Geoevent to create it since I can see us loading in tickets as they come in during every day. The data has a few date fields in them that would be useful in various spatiotemporal analysis operations depending on what an analyst wants to look at. In my case those fields are created_date, last_status_update_date, and close_date. When I defined the GeoEvent Definition for this data, I tagged the created_data as the START_TIME tag, and the closed_date as the END_TIME tag. Therefore, I guess when the overlying feature service got created , it was then time-enabled as interval based with those two fields hard coded as start-end time values. The space-time cube wants a dataset that is instant time...meaning only one field like created_date is used to time-enable. So as an analyst, if I stumble upon this amazing GeoEvent output layer in my Portal and I want to do spatiotemporal analysis on it, then how would I go about it? For example, maybe I want to investigate "how many tickets were created in various parts of the city over space and time the last 5 years?" and then "is there a spatiotemporal variance in how long tickets are open in parts of the city". With how it's setup now I don't see how I can do it without extracting the SBDS data to my desktop or another hosted copy where I can redefine the time-enablement on a Pro layer or a separate nearly-identical feature service. If I load the SBDS feature service into Pro, the time-enablement section of the properties is grayed-out so I can't redefine it there before creating the space-time cube. I also don't see a way to alter the properties of the feature service in GeoEvent or Portal to tinker with the time-enable properties. I think hosted views aren't an option for this kind of data either. I really wish users could alter/override the time-enablement of web layers inside of applications (Pro, Portal map layers), rather than it being hard coded into service definitions. This would give analysts freedom to explore lots of different attributes from a single dataset, rather than being limited to whatever the data admin that initially created the web service picked. Here is the output from the processing. Parameters Point Layer AustinOpenData_311UnifiedData\AustinOpenData_311UnifiedData Output Name junkspacetimecube.nc Distance Interval 1000 Feet Time Interval 1 Months Time Interval Alignment REFERENCE_TIME Reference Time 1/1/2013 Summary Fields Output File Messages Start Time: Thursday, October 11, 2018 5:04:48 PM Running script Create Space Time Cube... Submitted. Executing... Executing (CreateSpaceTimeCube): CreateSpaceTimeCube "Feature Set" 1000 Feet 1 Months ReferenceTime 1/1/2013 [] junkspacetimecube.nc # Start Time: Thu Oct 11 17:04:51 2018 Using URL based GPRecordSet param: https://coagisentd1.coacd.org/server/rest/services/Hosted/AustinOpenData_311UnifiedData/FeatureServer/0 WARNING 120094: Bin generation and analysis requires a projected coordinate system and a default projection of World Cylindrical Equal Area has been applied. ERROR 120040: Wrong time type for 'Input Features'. Expected 'instant', got 'interval'. Failed to execute (CreateSpaceTimeCube). Failed at Thu Oct 11 17:04:55 2018 (Elapsed Time: 3.91 seconds) Failed. ERROR 000582: Error occurred during execution. Completed script Create Space Time Cube... Failed to execute (CreateSpaceTimeCube). Failed at Thursday, October 11, 2018 5:04:55 PM (Elapsed Time: 6.66 seconds) -Andrew
... View more
10-12-2018
06:25 AM
|
0
|
2
|
883
|
POST
|
We just deployed GeoEvent, GeoAnalytics, and the Spatiotemporal Big Data Store (SBDS) deployed and I ran into an anomaly when while trying them out. In GeoEvent I'm reading in CSV data that has geometry in lat/long format, and then I want to store the results in a SBDS layer for use in analysis later. On my first attempt, I chose the defaults when creating the SBDS layer in GeoEvent Manager, which means it is created as WGS84. Once I got some sample data loaded, I tried to use GeoAnalytics to create space time cubes out of it, but I got the warning that the layer needs to be in a projected coordinate system. So, back to the drawing board. I figured I needed to recreate the SBDS layer with a projected coordinate system (at my office we use one of the US State Plane formats). When I went back and tried to create a new SpatioTemporal Data Source, I saw there are options to define the coord system of the Map & Feature services attached to the data source, but no option to define the coord system of the underlying data. I went ahead and tried this option to have the services in State Plane, but the result were services that were still in WGS 84, and when I look at the JSON results of the web service I see the coordinates are still lat/long. So here are my questions? 1) Am I right in thinking I should store data in the SBDS in the same coordinate system as the rest of our organization to avoid "projection on the fly" processing overhead during analysis. 2) If so, how do I define the coord system of the spatiotemporal layer? And then how do I get the lat/long feed to go into the data source properly? Thanks for any help you can provide, Andrew
... View more
10-11-2018
12:16 PM
|
0
|
4
|
1164
|
POST
|
I want to get a report of all groups in AGOL and their user count via the ArcGIS API for Python. I cannot figure out how to get the gis.groups.search() function to return all groups. All the Esri examples have some sort of text filter applied. The code I'm running from the ArcGIS Pro Python window is below. At first I tried using the syntax gis.groups.search(), but this returns the error RuntimeError: Unable to perform group search.'q' parameter must be specified. Then I tried gis.groups.search('*'), which ran without error, but the result is an empty set. Sample code run from ArcGIS Pro Python window: from arcgis.gis import GIS gis = GIS("https://myorg.maps.arcgis.com",clientid='myclientid') all_groups = gis.groups.search() for group in all_groups: members = group.get_members() print(str(len(members)))
... View more
06-13-2018
07:26 AM
|
0
|
2
|
3346
|
Title | Kudos | Posted |
---|---|---|
1 | 07-28-2022 08:55 AM | |
4 | 12-14-2023 07:15 AM | |
6 | 12-14-2023 06:52 AM | |
3 | 11-08-2023 06:34 AM | |
5 | 07-14-2023 07:32 AM |
Online Status |
Offline
|
Date Last Visited |
yesterday
|