AppDynamics switched from Semantic Versioning to Calendar Versioning starting in February 2020 for some agents and March 2020 for the entire product suite.

    Skip to end of metadata
    Go to start of metadata

    You are viewing an old version of this page. View the current version.

    Compare with Current View Page History

    « Previous Version 7 Next »

    On this page:

    Related pages:

    Your Rating:
    1 Star2 Star3 Star4 Star5 Star
    1 rates
    Synthetic jobs are configurable, scheduled tests that mimic end-user actions in remote browsers in supported locations. Synthetic jobs consist of URL measurements or synthetic scripts. To create a job, see Get Started with Browser Synthetic Monitoring.  

    Synthetic Job Support

    Browser Compatibility
    • IE6/7/8/9/10/11/Edge
    • Chrome, including Mobile
    • Firefox, including Mobile 
    • Safari, including Mobile
    • Opera

    Python Libraries

    Synthetic Job Locations

    For URL measurements and synthetic script jobs, the Synthetic Agent is always executed in isolation within a Docker container. This location is then mapped to the configured browser location. The synthetic script, however, is run on a different machine or location from the configured browser for security reasons. See Synthetic Agent Locations for more details.

    Synthetic Job Queue

    When you create a synthetic job, it is added to a queue based on the creation timestamp. Scheduled jobs are assigned a maturity level that influences when they will be executed in the synthetic job queue.

    Maturity Level for Scheduled Jobs

    Scheduled jobs are assigned a maturity level based on creation time and added to the synthetic job queue. The table below describes the two supported maturity levels.

    Maturity LevelDescription

    The Junior maturity level consists of synthetic jobs that are created or updated within two hours. Once two hours have passed since the last update or creation of the job, the Junior job maturity level is promoted to Senior maturity level. The promotion from Junior to Senior maturity is only performed only if enough capacity has been allocated. This avoids negatively affecting jobs which are currently executing.

    SeniorThe Senior maturity level consists of synthetic jobs that have been created or updated more than two hours ago. Synthetic jobs with Senior maturity level have ample allocated resources to be executed.

    Synthetic Job Execution 

    The synthetic job scheduler executes jobs according to the following cron-based expression:

    <second> <minute> <hour> <day-of-month> <month> <day-of-week> <year>

    When you schedule a job, you choose how frequently the job runs. It is recommended you choose a larger unit of time (hours or days) that can evenly divide into the smaller unit of time (minutes or hours). For example, if a job is scheduled to run every 15 minutes, the job runs four times within the hour. This results in the job consistently repeating every hour without interruption to the schedule.

    However, if you schedule a job such that a larger unit of time that does not divide evenly into the smaller unit of time, such as running every 50 minutes, then the job does not run at consistent times. For example, if the first job starts at 7:03, then the job will run at 7:53, 8:03, 8:53, and so on, resulting in a disruption to the schedule.


    Job Execution Order

    The execution order of synthetic jobs depends on the job priority and the job creation time. The Synthetic Server job marks the priority of a job based on several factors: the job type, job maturity, and your Browser Synthetic Monitoring license. The table below shows the job priority based on the job type, license type, and job seniority. The actual job execution order depends on the job priority and job creation timestamp. 

    Job PriorityLicense TypeJob Seniority


    Synthetic Job Throttling

    Synthetic jobs are only executed if they are in the job queue. If the max job queue size has been reached, however, no additional synthetic jobs will be added to the queue until the queue size decreases. The max queue size is defined by the priority, license, type, and maturity level.

    The following table shows how the maximum queue size is calculated:

    Max Queue SizeJob PriorityJob Maturity
    Number of Synthetic Agents * 10 (Pro)High Senior
    Number of Synthetic Agents * 10 * 0.5 (Trial)
    Number of Synthetic Agents * 10 * 0.25N/A
    Number of Synthetic Agents * 10 * 0.5LowJunior


    Job Execution Errors

    Customer is seeing different error messages with synthetic jobs and will like to understand their meaning and get more information to help with checking the issue at their end. 

    Error MessageCause of ErrorError Code
    Skipped; still waiting for a previous job executionAn attempt was made to queue a high-priority measurement request from a scheduled job before the previous measurement request from the same job, and location-browser combination has been processed.TARDY
    Skipped while new capacity is being addedAn attempt was made to queue a low-priority measurement request from a scheduled job before the previous measurement request from the same job, and location-browser combination has been processed.TARDY_ONBOARDING
    Skipped while new capacity is being addedAn attempt was made to queue a measurement request from a junior job beyond the maximum respective queue capacity.ONBOARDING
    Testing location is overloadedAn attempt was made to request measurement from a senior job beyond the maximum respective queue capacity.THROTTLED
    • No labels