-
Notifications
You must be signed in to change notification settings - Fork 48
Job File
To give DEXTER instructions on what to report, you create a job parameter file in simple JSON format.
DEXTER comes with DefaultJob.json job file in the folder with the binaries. Make a copy and edit that to produce job file suitable for your needs.
You can also use visual creator tool called DEXTER-UI to create job files.
Here are some Job File Examples for reference.
You can also watch this training video:
AppDynamics DEXTER job input file contains 3 sections:
Section | Element | Purpose |
---|---|---|
Target | What Controller(s) and Applications(s) to query | |
Controller | ||
UserName | ||
UserPassword | ||
Application | ||
NameRegex | ||
Type | ||
Input | What to get, including time range and what to select, and what to convert to data warehouse CSVs | |
TimeRange From and To | ||
UsersGroupsRolesPermissions | ||
Dashboards | ||
Events | ||
EventSelectionCriteria | ||
Configuration | ||
ConfigurationComparisonReferenceAPM | ||
ConfigurationComparisonReferenceWEB | ||
ConfigurationComparisonReferenceMOBILE | ||
ConfigurationComparisonReferenceDB | ||
DetectedEntities | ||
Metrics | ||
MetricsSelectionCriteria | ||
Flowmaps | ||
EntityDashboards | ||
EntityDashboardSelectionCriteria | ||
Snapshots | ||
SnapshotSelectionCriteria | ||
Output | What reports to produce using input data | |
UsersGroupsRolesPermissions | ||
Dashboards | ||
Events | ||
Configuration | ||
DetectedEntities | ||
EntityMetrics | ||
EntityMetricGraphs | ||
EntityDashboards | ||
EntityDetails | ||
Snapshots | ||
FlameGraphs |
Target parameter is a JSON array of custom JSON object pointing at Controller and specifying types and names of Applications to process.
Here is an example pointing at 2 Controllers to extract all APM Applications:
"Target": [
{
"Controller": "http://demo1.appdynamics.com/",
"UserName": "username@customer1",
"UserPassword": "",
"Application": ".*",
"NameRegex": true,
"Type": "APM"
},
{
"Controller": "http://demo2.appdynamics.com/",
"UserName": "username@customer1",
"UserPassword": "",
"Application": ".*",
"NameRegex": true,
"Type": "APM"
}
]
Here is an example extracting only SIM Application information:
"Target": [
{
"Controller": "http://demo1.appdynamics.com/",
"UserName": "username@customer1",
"UserPassword": "",
"Application": "DOES NOT MATTER",
"NameRegex": false,
"Type": "SIM"
}
]
Here is an example extracting only DB Collector for "MyDatabaseCollector" collector:
"Target": [
{
"Controller": "http://demo1.appdynamics.com/",
"UserName": "username@customer1",
"UserPassword": "",
"Application": "MyDatabaseCollector",
"NameRegex": false,
"Type": "DB"
}
]
URL of the controller, like https://yourcontroller.saas.appdynamics.com/.
If your controller is using port number, append it after :
like that: http://yourcontroller.yourdomain.com:8090/.
Do not put /controller after the host portion https://yourcontroller.saas.appdynamics.com /controller
Username of of the user to use to connect to Controller in <username>@<tenant>
format.
Only AppDynamics authentication is supported. LDAP or SAML credentials can not be used.
appdexter@customer1 for user named appdexter
and for single-tenant on-premises Controller
appddexter@saastenant for user named appdexter
in SaaS Controller saastenant.saas.appdynamics.com
Client API tokens (https://docs.appdynamics.com/display/latest/API+Clients) are supported.
You must issue a token first through either API or UI.
To use token, set UserName to value of BEARER
.
Password of the user to connect to Controller
Leave blank to be prompted for password when extraction begins.
Specify access token here.
Application or Applications to query in the Controller
If NameRegex is "false", interpreted as text.
If NameRegex is "true", interpreted as Regular Expression.
-
MyAwesomeProduction
== Matches just that Application -
ECommerce|Movie.*
== Matches ECommerce, ECommerce-Fulfillment and Movie Tickets Online Applications -
SOMETHING-NAM-S(G|B)69*|SOMETHING-NAM-SW
== Matches SOMETHING-NAM-SW, SOMETHING-NAM-SB690 and SOMETHING-NAM-SG690 Applications -
.*
or*
== Matches all applications in Controller
Specifies whether Application is interpreted as Regular Expression or not.
Specifies type of Application. Can be:
- APM
- SIM
- WEB
- MOBILE
- DB
- BIQ
If empty, "APM" is assumed.
If type is "SIM" or "BIQ", value in ApplicationName and NameRegex are ignored.
Input section is a JSON object specifying what to extract (logical model, Configuration rules, Metrics, Events, Snapshots, Flame Graphs) and what time range to operate on. Here is an example that specifies 2 hour time range and extracts everything:
"Input": {
"TimeRange": {
"From": "2018-01-31T19:00:00",
"To": "2018-01-31T21:00:00"
},
"UsersGroupsRolesPermissions": true,
"Dashboards": true,
"Licenses": true,
"Events": true,
"EventsSelectionCriteria": [ "All" ],
"Configuration": true,
"ConfigurationComparisonReferenceAPM": { "Controller": "", "Application": "" },
"ConfigurationComparisonReferenceWEB": { "Controller": "", "Application": "" },
"ConfigurationComparisonReferenceMOBILE": { "Controller": "", "Application": "" },
"ConfigurationComparisonReferenceDB": { "Controller": "", "Application": "" },
"DetectedEntities": true,
"Metrics": true,
"MetricsSelectionCriteria": [ "TransactionApplication", "TransactionTier", "TransactionNode", "TransactionBackend", "TransactionBT", "TransactionSEP", "TransactionError", "TransactionIP", "AgentStats", "OSHardware", "CLRStats", "IISStats", "JVMStats", "BusinessTransactionPercentiles" ],
"Flowmaps": true,
"Snapshots": true,
"EntityDashboards": true,
"EntityDashboardSelectionCriteria": {
"Tiers": [],
"TierType": {
"All": true,
"APP_AGENT": false, "DOT_NET_APP_AGENT": false, "NATIVE_APP_AGENT": false, "NATIVE_DYNAMIC": false, "NATIVE_SDK": false,
"NATIVE_WEB_SERVER": false, "NODEJS_APP_AGENT": false, "PHP_APP_AGENT": false, "PYTHON_APP_AGENT": false, "RUBY_APP_AGENT": false
},
"BusinessTransactions": [],
"BusinessTransactionType": {
"All": true,
"SERVLET": false, "HTTP": false, "WEB_SERVICE": false, "POJO": false, "JMS": false, "EJB": false, "SPRING_BEAN": false, "STRUTS_ACTION": false, "ASP_DOTNET": false, "ASP_DOTNET_WEB_SERVICE": false, "DOTNET_REMOTING": false, "WCF": false, "DOTNET_JMS": false, "POCO": false,
"PHP_WEB": false, "PHP_MVC": false, "PHP_DRUPAL": false, "PHP_WORDPRESS": false, "PHP_CLI": false, "PHP_WEB_SERVICE": false, "NODEJS_WEB": false, "NATIVE": false, "WEB": false, "PYTHON_WEB": false, "RUBY_WEB": false, "RUBY_RAILS": false, "BINARY_REMOTING": false
},
"Nodes": [],
"NodeType": {
"All": true,
"APP_AGENT": false, "DOT_NET_APP_AGENT": false, "NATIVE_APP_AGENT": false, "NATIVE_DYNAMIC": false, "NATIVE_SDK": false,
"NATIVE_WEB_SERVER": false, "NODEJS_APP_AGENT": false, "PHP_APP_AGENT": false, "PYTHON_APP_AGENT": false, "RUBY_APP_AGENT": false
},
"Backends": [],
"BackendType": {
"All": true,
"SOCKET": false, "HTTP": false, "CUSTOM": false, "CUSTOM_ASYNC": false, "FILE_SERVER": false, "MAIL_SERVER": false, "WEB_SERVICE": false, "ERP": false,
"CACHE": false,"WEBSPHERE_MQ": false, "MAINFRAME": false, "TIBCO_ASYNC": false, "TIBCO": false, "ESB": false, "SAP": false, "AVRO": false, "THRIFT": false,
"CASSANDRA": false, "MQ": false,"JMS": false, "WEBSOCKET": false, "JDBC": false, "RMI": false, "LDAP": false, "CORBA": false, "RABBITMQ": false, "ADODOTNET": false,
"DOTNETDirectoryServices": false, "DOTNETRemoting": false, "DOTNETMessaging": false, "WCF": false, "MSMQ": false, "DB": false, "NETWORK": false
}
},
"SnapshotSelectionCriteria": {
"Tiers": [],
"TierType": {
"All": true,
"APP_AGENT": false, "DOT_NET_APP_AGENT": false, "NATIVE_APP_AGENT": false, "NATIVE_DYNAMIC": false, "NATIVE_SDK": false,
"NATIVE_WEB_SERVER": false, "NODEJS_APP_AGENT": false, "PHP_APP_AGENT": false, "PYTHON_APP_AGENT": false, "RUBY_APP_AGENT": false
},
"BusinessTransactions": [],
"BusinessTransactionType": {
"All": true,
"SERVLET": false, "HTTP": false, "WEB_SERVICE": false, "POJO": false, "JMS": false, "EJB": false, "SPRING_BEAN": false, "STRUTS_ACTION": false, "ASP_DOTNET": false, "ASP_DOTNET_WEB_SERVICE": false, "DOTNET_REMOTING": false, "WCF": false, "DOTNET_JMS": false, "POCO": false,
"PHP_WEB": false, "PHP_MVC": false, "PHP_DRUPAL": false, "PHP_WORDPRESS": false, "PHP_CLI": false, "PHP_WEB_SERVICE": false, "NODEJS_WEB": false, "NATIVE": false, "WEB": false, "PYTHON_WEB": false, "RUBY_WEB": false, "RUBY_RAILS": false, "BINARY_REMOTING": false
},
"UserExperience": {
"Normal": true,
"Slow": true,
"VerySlow": true,
"Stall": true,
"Error": true
},
"SnapshotType": {
"Full": true,
"Partial": true,
"None": true
}
}
}
Specifies beginning and end of the time range to retrieve data from.
The value must conform to any standard .NET DateTime string https://docs.microsoft.com/en-us/dotnet/standard/base-types/standard-date-and-time-format-strings
Both local or GMT times are supported:
2017-09-19T07:00:00 == September 19, 7:00 AM local time
2017-09-19T07:00:00-04:00 == September 19, 7:00 AM Eastern Time (-4 hour offset)
2017-09-19T14:00:00Z == September 19, 14:00 PM GMT (same as 7am Pacific)
Specifies whether to extract and index Users, Groups, Roles and Permissions for the Controller.
Specifies whether to extract and index Dashboards, Widgets and Time Series used by Widgets for the Controller.
Specifies whether to extract and index Events and Health Rule Violations for All Applications, Controller Notifications and Controller Audit Events.
Selects which event types to extract.
Empty array []
means no events will be extracted.
Value of [ "All" ]
means all known event types will be extracted. All other members of array will be ignored.
Event Types are defined in EVENT_TYPES
For example, to extract just a few event types, specify this array:
"EventsSelectionCriteria": [
"APPLICATION_CONFIG_CHANGE",
"APPLICATION_ERROR",
"APP_SERVER_RESTART",
"POLICY_OPEN_WARNING"
]
Health Rule violations, Controller Audit and Controller Notifications events are always be extracted.
Specifies whether to extract and index configuration (BT rules, Backend rules, Data Collectors for APM, Web Page Rules for Web, and so on).
ConfigurationComparisonReferenceAPM\Controller and ConfigurationComparisonReferenceAPM\Application (String)
Specifies which APM Application to use as reference during configuration comparison. This Application must also be specified in Input criteria.
If Controller and Application are blank, then configuration comparison is performed against a blank template application.
ConfigurationComparisonReferenceWEB\Controller and ConfigurationComparisonReferenceWEB\Application (String)
Specifies which WEB Application to use as reference during configuration comparison. This Application must also be specified in Input criteria.
If Controller and Application are blank, then configuration comparison is performed against a blank template application.
ConfigurationComparisonReferenceMOBILE\Controller and ConfigurationComparisonReferenceMOBILE\Application (String)
Specifies which MOBILE Application to use as reference during configuration comparison. This Application must also be specified in Input criteria.
If Controller and Application are blank, then configuration comparison is performed against a blank template application.
ConfigurationComparisonReferenceDB\Controller and ConfigurationComparisonReferenceDB\Application (String)
Specifies which DB Application to use as reference during configuration comparison. This Application must also be specified in Input criteria.
If Controller and Application are blank, then configuration comparison is performed against a blank template application.
Specifies whether to extract and index list of detected entities (Business Transactions, Tiers, Nodes for APM, Web pages for EUM and so on).
Specified whether to extract and index summary and detail metrics for all APM Entities, which are used in Entity Metrics, Entity Metric Graphs and Entity Details report
Used in conjunction with MetricsSelectionCriteria.
Selects which sets of metrics export for APM Entities.
Empty array []
means no metrics will be extracted.
Metric sets are defined in EntityMetricsExtractMapping.csv, column "MetricSet". See Metric Sets for details on how to add your own metrics and customize graphs.
Specifies whether to extract and index flow maps for APM Entities (Application, Tier, Node, Business Transaction and Backend).
Specifies whether to take screenshots of the main screen for APM Entities (Application, Tier, Node, Business Transaction and Backend).
Filters screenshot taking to only ones these Tiers.
Regular expressions are supported.
Contains settings for filtering by Tier Type. Each of the settings specifies the type of Tier which will be included.
If All
is set to true
, all the other settings are ignored.
If All
is set to false
, other settings for specific Tier Types are checked.
Filters screenshot taking to only ones these Business Transactions.
Regular expressions are supported.
-
[]
- Empty array means all Business Transactions will be matched -
["Web-Main"]
- specifies that only "Web-Main" Business Transaction will match -
["Web-.*"]
– specified that any Business Transactions that match specified Regex will match -
["Web.*", "SomeService", "XYX.*"]
– array of settings mixing exact match and Regex match
Contains settings for filtering by Business Transaction Type. Each of the settings specifies the type of Business Transaction which will be included.
If All
is set to "true", all the other settings are ignored.
If All
is set to "false", other settings for specific Tier Types are checked.
Filters screenshot taking to only ones these Nodes.
Regular expressions are supported.
Contains settings for filtering by Node Type. Each of the settings specifies the type of Node which will be included.
If All
is set to true
, all the other settings are ignored.
If All
is set to false
, other settings for specific Tier Types are checked.
Filters screenshot taking to only ones these Backends.
Regular expressions are supported.
Contains settings for filtering by Backend Type. Each of the settings specifies the type of Backend which will be included.
If All
is set to true
, all the other settings are ignored.
If All
is set to false
, other settings for specific Tier Types are checked.
Values:
- All
- SOCKET
- HTTP
- CUSTOM
- CUSTOM_ASYNC
- FILE_SERVER
- MAIL_SERVER
- WEB_SERVICE
- ERP
- CACHE
- WEBSPHERE_MQ
- MAINFRAME
- TIBCO_ASYNC
- TIBCO
- ESB
- SAP
- AVRO
- THRIFT
- CASSANDRA
- MQ
- JMS
- WEBSOCKET
- JDBC
- RMI
- LDAP
- CORBA
- RABBITMQ
- ADODOTNET
- DOTNETDirectoryServices
- DOTNETRemoting
- DOTNETMessaging
- WCF
- MSMQ
- DB
- NETWORK
Specifies whether to retrieve Snapshots for APM aplications.
Used in conjunction with all settings in SnapshotSelectionCriteria.
Filters Snapshots to be extracted to only ones originating from these Tiers.
Regular expressions are supported.
-
[]
- Empty array means all Tiers will be matched -
["ECommerce"]
- specifies that ECommerce Tier will match -
["ECommerce.*"]
- specifies that any Tiers that match specified Regex will match, such as ECommerce and ECommerce-Inventory -
["Web", "App", "Middle.*"]
– array of settings mixing exact match and Regex match, such as Web, App and Middleware
Contains settings for filtering by Tier Type. Each of the settings specifies the type of Tier which will be included.
If All
is set to true
, all the other settings are ignored.
If All
is set to false
, other settings for specific Tier Types are checked.
Values:
- All
- APP_AGENT
- DOT_NET_APP_AGENT
- NATIVE_APP_AGENT
- NATIVE_DYNAMIC
- NATIVE_SDK
- NATIVE_WEB_SERVER
- NODEJS_APP_AGENT
- PHP_APP_AGENT
- PYTHON_APP_AGENT
- RUBY_APP_AGENT
Filters Snapshots to be extracted to only ones originating from these Business Transactions.
Regular expressions are supported.
-
[]
- Empty array means all Business Transactions will be matched -
["Web-Main"]
- specifies that only "Web-Main" Business Transaction will match -
["Web-.*"]
– specified that any Business Transactions that match specified Regex will match -
["Web.*", "SomeService", "XYX.*"]
– array of settings mixing exact match and Regex match
Contains settings for filtering by Business Transaction Type. Each of the settings specifies the type of Business Transaction which will be included.
If All
is set to "true", all the other settings are ignored.
If All
is set to "false", other settings for specific Tier Types are checked.
Values:
- All
- SERVLET
- HTTP
- WEB_SERVICE
- POJO
- JMS
- EJB
- SPRING_BEAN
- STRUTS_ACTION
- ASP_DOTNET
- ASP_DOTNET_WEB_SERVICE
- DOTNET_REMOTING
- WCF
- DOTNET_JMS
- POCO
- PHP_WEB
- PHP_MVC
- PHP_DRUPAL
- PHP_WORDPRESS
- PHP_CLI
- PHP_WEB_SERVICE
- NODEJS_WEB
- NATIVE
- WEB
- PYTHON_WEB
- RUBY_WEB
- RUBY_RAILS
- BINARY_REMOTING
Contains settings for filtering by Snapshot User Experience:
- Normal
- Slow
- VerySlow
- Stall
- Error
Contains settings for filtering by Snapshot Type:
- Full
- Partial
- None
Output section is a JSON object specifying what reports to render (logical model, Configuration rules, Metrics, Events, Snapshots, Flame Graphs).
"Output": {
"UsersGroupsRolesPermissions": true,
"Dashboards": true,
"Licenses": false,
"Events": true,
"Configuration": true,
"DetectedEntities": true,
"EntityMetrics": true,
"EntityMetricGraphs": true,
"EntityDashboards": true,
"EntityDetails": true,
"Snapshots": true,
"FlameGraphs": true
}
Specifies whether to render Users and Permissions report for Users, Groups, Roles and Permissions in Controller
Specifies whether to render Dashboards Report report for Controller Dashboards, Widgets and Time Series used by Widgets.
Specifies whether to render Events and Health Rule Violations report.
Specifies whether to render Configuration report.
Specifies whether to render:
- Detected APM Entities report for APM applications
- Detected SIM Entities report for SIM applications
- Detected DB Entities report for DB Collectors
- Detected WEB Entities report for WEB applications
- Detected MOBILE Entities report for MOBILE applications
- Detected BIQ Entities report for BIQ applications
Specifies whether to render Entity Metrics report.
Specifies whether to render Entity Metrics Graphs report.
Specifies whether to render Entity Dashboards report.
Specifies whether to render Entity Details report for Entities that have some metric or snapshot activity.
Specifies whether to render Snapshots and Snapshots Method Calls reports.
Specifies whether to render Flame Graphs and Flame Charts reports for APM Applications, Tiers, Nodes and Business Transactions.
TODO will document when it is released
TODO will document when it is released
- Home
- Getting Started Walkthrough
- Run
-
Excel Reports
- Detected APM Entities
- Detected SIM Entities
- Detected DB Entities
- Detected WEB Entities
- Detected MOBILE Entities
- Detected BIQ Entities
- Entity Metrics
- Entity Metric Graphs
- Registered APM Metrics
- Entity Flowmaps
- Configuration
- Events and Health Rule Violations
- Entity Details
- Snapshots
- Snapshot Method Calls
- Individual Snapshot
- Users and Permissions
- Dashboards
- Health Check
- PowerBI Reports
- Tableau Reports
- Browser Reports