Editor tracking provides a setting on feature classes and tables that allows you to automatically record information about any inserts and updates that are made. It maintains a record of the editor who created or modified the data and a time stamp of when the edit occurred. Many organizations find editor tracking helpful to maintain accountability and transparency as well as to enforce quality control standards.
Editor tracking can help answer questions such as who was responsible for edits made within a geodatabase. When editor tracking is enabled on a feature class or table, the following information is tracked automatically:
- User who created a feature
- Date and time the feature was created
- User who last edited a feature
- Date and time the feature was last edited
You can enable editor tracking for the following data types in a file, mobile, or enterprise geodatabase:
- Table
- Feature class
- Annotation class
- Dimension class
- Feature dataset
- Attributed relationship class
Note:
Not all relationship class types support editor tracking. Editor tracking can only be enabled on table-based relationship classes such as many-to-many or attributed 1:1 or 1:M relationship classes.
How editor tracking works
When editor tracking is enabled in ArcGIS Pro on a dataset in a file, mobile, or enterprise geodatabase, the attribute table is updated to include fields designated to track editing information. When a feature is created, editor tracking records the name of the user who created the feature along with the date and time of creation. When existing features are updated, the name of the user who made the edit, along with the date and time the edit was made, will be recorded.
When editor tracking is enabled using default settings, the following four field names and field data types are added automatically:
- created_user (Text)
- created_date (Date)
- last_edited_user (Text)
- last_edited_date (Date)
To track edits made to data published as a feature layer, you can enable editor tracking for some or all of the layers in your feature service. Once enabled, edits made to the data through the feature service are tracked just as when working directly with the data in the geodatabase in ArcGIS Pro.
When values are recorded
When editor tracking is enabled, ArcGIS records new editor tracking values whenever a feature or row is inserted or modified in any way. This includes modifications to user-defined attribute columns, system columns not defined by the user, and the shape column that stores feature geometry.
Note:
Features that existed when editor tracking was enabled display a <NULL> value for the designated editor tracking fields. The fields that track the user who created the data and the date when the feature was originally created will remain <NULL>.
Most operations record tracking values, including those that automatically update data behind the scenes. For example, deleting an origin in a simple relationship automatically updates the foreign key column in the related feature and records new tracking values for the related feature.
Editor tracking applies to operations on existing datasets only and does not apply to operations that create datasets. In addition, operations that involve schema changes that do not also modify column values in the process do not record new tracking values.
For example, performing any of the following operations will not update editor tracking values:
- Changing the schema without modifying column values
- Adding or deleting fields
- Copying and pasting a feature class
- Running the reconcile and post process with versioned data
- Copying data with a data extraction tool
- Converting labels to annotation
- Importing an XML workspace document
Depending on your organization's needs, you can also use archiving to record and access a complete history of the dataset's edits.
How user names are recorded
User names are recorded based on the following two authentication methods used to sign in and access a file, mobile, or enterprise geodatabase:
- Operating system authentication—For file and mobile geodatabases edited with the ArcGIS Pro client and enterprise geodatabases that you connect to through operating system authentication, the user name written is the operating system login.
- Database authentication—The database user name is recorded for enterprise geodatabases that you connect to using a database account.
For example, editor tracking has been enabled on a feature class named Schools. The editor tracking fields are highlighted in yellow in the image below.
Editor tracking has recorded the date and time at which the user EEVANS added a new school named Highgrove Ridge High School.
Later that day, another user, BHARDIN, updated the enrollment numbers for the current school year. Editor tracking recorded BHARDIN as the last user to edit this data as well as the date and time the edits were made.
Realms
If your data resides in an enterprise geodatabase and you use database authentication, you can choose to append a realm (for example, @esri.com) to the name of the user who makes the edit. For example, if you have a user named John in your Denver office and a user named John in your Seattle office, you can track their edits as John@denver and John@seattle, respectively, so that you can be certain which John made each edit.
To set the realm for an enterprise geodatabase, you must have geodatabase administrator privileges. In the Catalog pane, right-click the connection to the geodatabase, click Properties, and click the Editor Tracking tab. You can then choose whether to use the default realm or apply your own. You can also choose to append a realm to edits made through a feature service.
Note:
Realms can be used to differentiate edits made through a feature service as opposed to those made directly to the data in the geodatabase. See Editor tracking for feature services for more information.
How times are recorded
When editor tracking is enabled, there are two options for how the date and time will be recorded: UTC or Database time.
- UTC (coordinated universal time) is the default and recommended setting. UTC is required for datasets registered as branch versioned or for any data that will be shared via services with editor tracking enabled. As a best practice, use UTC when your workflow involves data distributed across time zones.
- Database time is based on the local time zone in which your database resides and should only be used when your data is confined to the same time zone.
Note:
If a preexisting date field is chosen when enabling editor tracking, any date and time values already populated in this field are expected to match the editor tracking time standard that you've specified.
Reconcile and post behavior
When versioned data is edited, the date and time values recorded are from when the edits are made, not when a reconcile occurs. For example, if an editor makes a change to a row and it was reconciled and posted into the default version the next day, the last edit date for the row in the default version will be from the previous day when the editor made the change.
Conflict resolution policy determines updates made to editor tracking fields of the edited version when versions with conflicts are reconciled. Differences in editor tracking fields alone do not trigger conflicts. If there are no conflicts, values in the editor tracking fields are applied to the edit version as with values from any other field.
Editor tracking properties
The Editor Tracking tab, accessible from the table or feature class properties in the Catalog pane, allows you to view editor tracking properties. Additionally, you can enable editor tracking using default or custom field name values. When enabling editor tracking, any fields specified that do not already exist will be created automatically. If fields do exist, they must be of the correct ArcGIS field data type.
The Editor Tracking tab allows you to set the following:
- Use the Enable editor tracking toggle button to enable or disable editor tracking.
- Choose the fields to update when a new feature or record is created:
- Creator Field—The default value for this field is created_user and stores the name of the user who creates features or records.
Create Date Field—The default value for this field is created_date and stores the date and time a feature or record was created.
- Creator Field—The default value for this field is created_user and stores the name of the user who creates features or records.
- Choose the fields to update when a feature or record is edited:
- Editor Field—The default value for this field is last_edited_user and stores the name of the user who last edited a feature or record.
Edit Date Field—The default value for this field is last_edited_date and stores the date a feature or record was last edited.
- Editor Field—The default value for this field is last_edited_user and stores the name of the user who last edited a feature or record.
- Choose the time standard:
- UTC (recommended)—When editor tracking is enabled on a dataset using predefined settings, the date and time recorded when either the feature or record is created or updated is set to record in UTC by default.
Database time—To enable editor tracking to record time in database time, use the dataset’s Properties dialog box or the Enable Editor Tracking geoprocessing tool. Recording the time in the database’s time zone is recommended only if users are certain all edits are to be performed in the same time zone.
- UTC (recommended)—When editor tracking is enabled on a dataset using predefined settings, the date and time recorded when either the feature or record is created or updated is set to record in UTC by default.
See Enable editor tracking for more information about the different methods available to enable or disable editor tracking.