Versions Compared

    Key

    • This line was added.
    • This line was removed.
    • Formatting was changed.
    Comment: Published by Scroll Versions from this space and version 20.5
    Sv translation
    languageen

    This page describes administration and advanced configuration options for the EUM Server. 

    Configure Data Store Expiration 

    As part of the Analytics functionality used by EUM, the Server stores some data, like crash reports and resource snapshots, in a local blob store. The default setting of 30 days, but you can change the storage period to be longer or shorter by following these steps:

    1. Open $APPDYNAMICS_HOME/EUM/eum-processor/bin/eum.properties with a text editor.
    2. Open $APPDYNAMICS_HOME/EUM/eum-processor/bin/eum.sample.properties with a text editor.
    3. Copy the onprem.crashReportExpirationDays property and the onprem.resourceSnapshotExpirationDays property from the sample file into eum.properties and set it to whatever value you wish. The unit is days.
    4. Restart the Server.

    Anchor
    max-page-url
    max-page-url
    Set the Maximum Length of Page URLs Read From Beacons

    By default, after the EUM Collector receives beacons, the EUM Processor will only read 512 characters of page URLs contained in the beacon. If the page URL exceeds 512 characters, the EUM Processor will truncate the page URL. You can configure the EUM Processor to read a longer page URL with the configuration beaconReader.maxUrlLength. The maximum length that can be set is 2048, which is imposed by the JavaScript Agent creating the beacon.

    To change the maximum length of the page URL read by the EUM Processor:

    1. Open $APPDYNAMICS_HOME/EUM/eum-processor/bin/eum.properties with a text editor.
    2. Add the property beaconReader.maxUrlLength to the desired length (maximum is 2048):

      Code Block
      languagebash
      beaconReader.maxUrlLength=<max_length>
    3. Restart the Server.

    Anchor
    update-geo-database
    update-geo-database
    Update the EUM Server's Geo Server

    The on-prem EUM Server ships with Neustar's IP GeoPoint database for managing the geolocation of IP addresses. You can get daily updates of the Neustar IP GeoPoint from the AppDynamics download site.

    To keep your version of the database current, you need to update your copy of the database manually:

    Tabs Container
    Width800px
    directionhorizontal
    Tabs Page
    tabNameLinux
    titleLinux
    1. From the AppDynamics download site, search for and download the Neustar data file (neustar.dat).
    2. Replace neustar.dat in $APPDYNAMICS_HOME/EUM/eum-processor/bin.
    3. In the $APPDYNAMICS_HOME/EUM/eum-processor.log, verify that the new data file has been loaded. 
    4. Update the JVM's -Xmx option in the $APPDYNAMICS_HOME/EUM/eum-processor/bin/eum-processor-launcher.vmoptions file.

      • Increase the JVM max memory (-Xmx) for the Server by at least 800M.

    Tabs Page
    tabNameWindows
    titleWindows
    1. From the AppDynamics download site, search for and download the Neustar data file (neustar.dat).
    2. Replace neustar.dat in $APPDYNAMICS_HOME\EUM\eum-processor\bin.
    3. In the $APPDYNAMICS_HOME\EUM\eum-processor.log, verify that the new data file has been loaded. 
    4. Update the JVM's -Xmx option in the $APPDYNAMICS_HOME\EUM\eum-processor\bin\eum-processor-launcher.vmoptions file.

      • Increase the JVM max memory (-Xmx) for the Server by at least 800M.

    Anchor
    eum-server-collector-port-config
    eum-server-collector-port-config
    Configure the Port for the EUM Agent

    The on-prem EUM Server by default uses the same port to collect data from the EUM agent and to send data through the API server to the Controller. You can configure the EUM Server to use a different port to collect data from the EUM agent by following the instructions below. 

    1. Open $APPDYNAMICS_HOME/EUM/eum-processor/bin/eum.properties with a text editor.
    2. Add the following lines to $APPDYNAMICS_HOME/EUM/eum-processor/bin/eum.properties, replacing <PORT> with the port you want the EUM server to listen to.

      Code Block
      languagetext
      processorServer.collectorHttpPort=<PORT>
      processorServer.collectorHttpsPort=<PORT>
    3. Restart the EUM Server.
    4. From the Controller Admin UI, change the ports for the properties eum.beacon.hosteum.beacon.https.host, eum.cloud.host, and eum.mobile.screenshot.host so that they are the same as those assigned to processorServer.collectorHttpPort and processorServer.collectorHttpsPort. This allows the beacon to communicate with the collector. 

      For example, if you set processorServer.collectorHttpPort=7050 and processServer.collectorHttpsPort=7051, you would then set the ports for the properties eum.beacon.host and eum.mobile.screenshot.host to 7050 for HTTP and eum.beacon.https.host to 7051 for HTTPS as shown below: 

    Controller SettingsImage Modified

    Anchor
    limit-eum-snapshots
    limit-eum-snapshots
    Limit the Number of EUM Snapshots 

    When an application has a high number of Ajax requests per page, the EUM Server retains a large number of snapshots that can include base, virtual, and Ajax pages as well as iFrames. You can limit the number of snapshots retained by the EUM server by setting a global maximum, reducing the time that they are retained, or by filtering snapshots based on the network response time.

    Anchor
    set-global-limits
    set-global-limits
    Setting the Global Limit for Snapshots

    You set the global limit on the number of snapshots to be retained per minute with the configuration browserBeaconSampling.maxSamples. The default value is 1000. Once the limit is reached, all snapshots will be dropped indiscriminately. The limit can be globally configured through the eum.properties file.

    1. Open $APPDYNAMICS_HOME/EUM/eum-processor/bin/eum.properties with a text editor.
    2. Add the following line to eum.properties, replacing <global_limit> with the global maximum number of snapshots to retain.

      Code Block
      browserBeaconSampling.maxSamples = <global_limit>
    3. Restart the EUM Server.

    Anchor
    reduce-lifespan
    reduce-lifespan
    Reduce the Lifespan of Event Snapshots

    Another way to limit the number of EUM snapshots is to reduce the number of days that the event snapshots are retained. Event snapshots only apply to the crash reports, code issues, and IoT errors and are stored in the local blob store: $APPDYNAMICS_HOME/EUM/eum-processor/store

    By default, the EUM Server retains the event snapshots for 90 days. If your Events Service retains events for fewer days (e.g., 14 days), you can safely change the EUM Server's retention period to be the same as the Events Service's retention period. If the EUM Server retains the event snapshots for fewer days than the Events Service, however, you may run into errors when viewing older events in the Controller UI.

    Info

    When reducing the lifespan of event snapshots, you are not modifying the retention period of the Controller or the Events Service.

    Setting the Lifespan for the Event Snapshots

    1. Open $APPDYNAMICS_HOME/EUM/eum-processor/bin/eum.properties with a text editor.
    2. Add the following line to eum.properties, replacing <no_of_days> with the number of days that you'd like to retain the event snapshots. The default is 90.

      Code Block
      eventSnapshotStore.lifespanInDays = <no_of_days>
    3. Restart the EUM Server.

    Anchor
    filter-snapshots
    filter-snapshots
    Filtering Snapshots Based on the Network Response Time

    You set a threshold that filters the snapshots based on the network response time. If the network response time is at or below the configured threshold, the snapshot is then retained. You set the threshold with the configuration browserBeaconSampling.hierarchyAwareSamplerPageUXThreshold.

    Below are the supported threshold values and the snapshots that would be retained. The default value is Slow.

    • Normal - Using this threshold value will retain all snapshots.

    • Slow - Using this threshold value will retain snapshots having a network response time of slow, very slow, and stalled.

    Setting the Threshold for the Network Response Time

    1. Open $APPDYNAMICS_HOME/EUM/eum-processor/bin/eum.properties with a text editor.
    2. Add the following line to eum.properties, replacing <threshold> with one of the supported thresholds (Normal or Slow) for retaining snapshots.

      Code Block
      browserBeaconSampling.hierarchyAwareSamplerPageUXThreshold = "<threshold>"
    3. Restart the EUM Server.

    Turn On Access Logs

    By default, server access logging for the EUM Server's underlying application server is turned off. To turn it on, open $APPDYNAMICS_HOME/EUM/eum-processor/conf/local-eum-processor.yml with a text editor and find the following section under the server entry:

    Code Block
     requestLog:
            appenders: []

     Add the following information:

    Code Block
    requestLog:
            timeZone: UTC
            appenders:
              - type: file
                archive: true
                currentLogFilename: ../logs/access.log
                archivedLogFilenamePattern: ../log/accedd-%d.log.gz

     Save the file and restart the EUM Server.

    Anchor
    eum-server-config-file
    eum-server-config-file
    EUM Server Configuration File

    You can configure the EUM Server by setting properties in the file  $APPDYNAMICS_HOME/EUM/eum-processor/bin/eum.properties. You are recommended to copy the reference sample file $APPDYNAMICS_HOME/EUM/eum-processor/bin/eum.sample.properties to $APPDYNAMICS_HOME/EUM/eum-processor/bin/eum.properties, modify the settings to fit your needs, and then restart the EUM Server so that the new settings are applied. 

    The table below lists and describes the supported EUM properties, lists defaults, and specifies whether the property is required. The values for the database properties must conform with the MySQL syntax rules given in Schema Object Names

    EUM PropertyDefaultRequired?Description

    onprem.dbHost

    dbHost
    YesThe name of the database host.

    onprem.dbPort

    3388YesThe port to the database host.

    onprem.dbSchema

    eum_dbYesThe name of the EUM database.

    onprem.dbUser

    eum_userYesThe user name for the EUM database.

    onprem.dbPassword

    N/AYesThe user password to the EUM database. The password can consist of any ASCII character except the characters '^', '/', or '$'.
    onprem.eventSnapshotDiskAllowance-1NoThe maximum disk space allotted for storing event snapshots. The default value of -1 allots unlimited disk space to store event snapshots. You can specify a positive integer representing the maximum number of bytes for storing event snapshots.

    onprem.fileStoreRoot

    ../storeNoThe path to the directory storing EUM data such as snapshots.

    onprem.crashReportExpirationDays

    365NoThe number of days that crash reports are retained.
    onprem.resourceSnapshotExpirationDays15NoThe number of days that resource snapshots are retained.

    onprem.resourceSnapshotDiskAllowance

    21474836480  (20 GB)

    No

    The maximum disk space allotted for storing resource snapshots. The default maximum disk space is 20 GB or 21474836480 bytes. You can specify a positive integer representing the maximum number of bytes for storing resource snapshots.

    processorServer.httpPort

    7001NoThe HTTP port to the EUM Processor.  The EUM Processor runs in one process containing the collector, aggregator, crash-processor, and monitor services.

    processorServer.httpsPort

    7002NoThe HTTPS port to the EUM Processor.

    processorServer.httpsProduction

    trueNoThe flag for turning enabling (true) or disabling HTTPS to the EUM Processor.

    processorServer.keyStorePassword

    N/ANoThe password to the Key Store for the EUM Processor.

    processorServer.keyStoreFileName

    bin/ssugg.keystoreNoThe path to the file that stores the password to the Key Store for the EUM Processor.

    processorServer.collectorHttpPort

    7001NoThe HTTP port of the EUM Collector. By default, the EUM Collector shares the same port as the EUM Processor, but you can configure the port to be different. The EUM Collector receives the metrics sent from the JavaScript agent.

    processorServer.collectorHttpsPort

    7002NoThe HTTPS port of the EUM Collector.

    analytics.enabled

    trueYesThe flag for enabling or disabling the Analytics Server.

    analytics.serverScheme

    httpNoThe network protocol for connecting to the Analytics Server. It is only required with analytics.enabled=true.

    analytics.serverHost

    events.service.hostnameNoThe hostname of the Analytics Server. It is only required with analytics.enabled=true.

    analytics.port

    9080NoThe port to the Analytics Server. It is only required when analytics.enabled=true.
    analytics.accountAccessKey
    access-keyNoThe access key for connecting to the Analytics Server. It is only required with analytics.enabled=true.
    analytics.eventTypeLifeSpan.0.eventType
    BrowserRecord
    No

    The type of event to be saved.

    The following values are supported:

    • BrowserRecord
    • MobileSnapshot
    • SessionRecord
    • MobileSessionRecord

    If this property is set, you must also set analytics.eventTypeLifeSpan.0.lifeSpan.

    analytics.eventTypeLifeSpan.0.lifeSpan
    8
    No

    The number of days to retain the event records specified by analytics.eventTypeLifeSpan.0.eventType. If this property is set, you must also set analytics.eventTypeLifeSpan.0.eventType. 

    analytics.eventTypeLifeSpan.1.eventType
    MobileSnapshot
    No

    The type of event to be saved.

    The following values are supported:

    • BrowserRecord
    • MobileSnapshot
    • SessionRecord
    • MobileSessionRecord

    If this property is set, you must also set analytics.eventTypeLifeSpan.1.lifeSpan.

    analytics.eventTypeLifeSpan.1.lifeSpan
    8
    No

    The number of days to retain the event records specified by analytics.eventTypeLifeSpan.1.eventType. If this property is set, you must also set analytics.eventTypeLifeSpan.1.eventType.

    analytics.eventTypeLifeSpan.2.eventType

    SessionRecord

    No

    The type of event to be saved.

    The following values are supported:

    • BrowserRecord
    • MobileSnapshot
    • SessionRecord
    • MobileSessionRecord

    If this property is set, you also must set analytics.eventTypeLifeSpan.2.lifeSpan.

    analytics.eventTypeLifeSpan.2.lifeSpan
    8NoThe number of days to retain the event records specified by analytics.eventTypeLifeSpan.2.eventType. If this property is set, you must also set analytics.eventTypeLifeSpan.2.eventType.
    analytics.eventTypeLifeSpan.3.eventType
    MobileSessionRecordNo

    The type of event to be saved.

    The following values are supported:

    • BrowserRecord
    • MobileSnapshot
    • SessionRecord
    • MobileSessionRecord

    If this property is set, you also must set analytics.eventTypeLifeSpan.3.lifeSpan.

    analytics.eventTypeLifeSpan.3.lifeSpan
    8
    The number of days to retain the event records specified by analytics.eventTypeLifeSpan.3.eventType. If this property is set, you must also set analytics.eventTypeLifeSpan.3.eventType.
    onprem.mobileAppBuildTimeSeriesRequestCountRollupDays
    7
    NoThe EUM Collector searches for the dSYM file in the beacon traffic for the configured number of days. If the dSYM file is not present during the configured time frame, a warning message is displayed in the Controller UI.
    onprem.maxNumberOfMobileBuildsWithoutDsym
    10
    NoThe maximum number of visible missing dSYM files in the Controller UI.
    collection.sessionEnabled
    true
    NoThe flag for enabling or disabling browser/mobile session collection. If you are upgrading the EUM Server from versions 4.2 and lower to 4.3 or higher, the default is false.
    collection.accessControlAllowOrigins.0*No

    You can use this property to limit the cross original resource sharing (CORS). By default, the EUM Collector responds with the following: Access-Control-Allow-Origin: *

    eventSnapshotStore.lifespanInDays
    90No

    The number of days that the event snapshots stored in the EUM Server's local blob store ($APPDYNAMICS_HOME/EUM/eum-processor/store) are retained. The event snapshots only apply to crash reports, code issues, and IoT errors.

    sessionization.webSessionRetentionMins
    5NoThe number of minutes that browser sessions are retained after they are closed. This allows browser sessions that begin and end at different times to be retained. The longer the configured retention time, the larger the number of closed sessions held in memory, resulting in higher memory usage.
    sessionization.mobileSessionRetentionMins5NoThe number of minutes that mobile sessions are retained after they are closed. This enables mobile sessions that begin and end at different times to be retained. The longer the configured retention time, the larger the number of closed sessions held in memory, resulting in higher memory usage.
    throttling.resourceSnapshot.maxTotalPerMinPerAccount
    1000NoThe maximum number of total resource snapshots retained each minute for an account.
    throttling.resourceSnapshot.maxNormalPerMinPerAccount
    800NoThe maximum number of resource snapshots of pages with a "Normal" user experience that are retained each minute for an account. In general, you want the number for this property to be smaller than that for throttling.resourceSnapshot.maxTotalPerMinPerAccount, so you can also retain resource snapshots of pages with a "Slow", "Very Slow", or "Stall" user experience.
    throttling.session.maxTrackedSessionsPerAccount
    50000NoThe maximum number of active sessions and unexpired closed sessions that are stored in memory for an account. When the maximum is reached, events that create new sessions will be dropped. This setting helps to control the memory used for sessions at the account level.
    Info

    From EUM Server version 4.5.1 and later, the property crashProcessing.sessionEnabled is no longer supported. Instead, the association of crashes with sessions is enabled by default. If you are using an earlier version (<4.5.1) of the EUM Server and want to upgrade to 4.5.1 or higher, you will need to remove the property crashProcessing.sessionEnabled from the eum.properties file to prevent the EUM Server from throwing errors.

    ...