{
"applicationName": "",
"intervals": [
"1m",
"5m",
"15m",
"1h",
"12h",
"1d",
"snapshot"
],
"@killSwitch": {
"disableMetricCollection": false,
"disableTracing": false
},
"@thresholdsAlertsConfig": {
"@notificationProviders": [],
"@alertHistoryConfig": {
"maxNumberOfItems": 500,
"toleratedNumberOfItems": 550
},
"dispatcherThreadPoolSize": 0
},
"@thresholdsConfig": {
"thresholds": [
{
"name": "OrderPerMinuteThreshold",
"producerName": "ShopService",
"statName": "placeOrder",
"valueName": "req",
"intervalName": "1m",
"timeUnit": "MILLISECONDS",
"guards": [
{
"value": "10",
"direction": "DOWN",
"status": "GREEN"
},
{
"value": "10",
"direction": "UP",
"status": "YELLOW"
},
{
"value": "15",
"direction": "UP",
"status": "ORANGE"
},
{
"value": "20",
"direction": "UP",
"status": "RED"
},
{
"value": "50",
"direction": "UP",
"status": "PURPLE"
}
]
},
{
"name": "ShopServiceAVG",
"producerName": "ShopService",
"statName": "placeOrder",
"valueName": "avg",
"intervalName": "1m",
"timeUnit": "MILLISECONDS",
"guards": [
{
"value": "150.0",
"direction": "DOWN",
"status": "GREEN"
},
{
"value": "150.0",
"direction": "UP",
"status": "YELLOW"
},
{
"value": "200.0",
"direction": "UP",
"status": "ORANGE"
},
{
"value": "250.0",
"direction": "UP",
"status": "RED"
},
{
"value": "500.0",
"direction": "UP",
"status": "PURPLE"
}
]
}
]
},
"@gaugesConfig": {
"@gauges": [
{
"name": "Constant",
"@minValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 0
},
"@currentValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 70
},
"@maxValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 100
}
},
{
"name": "Orders",
"@minValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 0
},
"@currentValue": {
"producerName": "ShopService",
"statName": "placeOrder",
"valueName": "req",
"intervalName": "1m",
"timeUnit": "MILLISECONDS"
},
"@maxValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 50
}
},
{
"name": "Sessions",
"@minValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 0
},
"@currentValue": {
"producerName": "SessionCount",
"statName": "Sessions",
"valueName": "cur",
"intervalName": "default",
"timeUnit": "MILLISECONDS"
},
"@maxValue": {
"producerName": "SessionCount",
"statName": "Sessions",
"valueName": "max",
"intervalName": "default",
"timeUnit": "MILLISECONDS"
}
},
{
"name": "Memory",
"@minValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 0
},
"@currentValue": {
"producerName": "Heap memory",
"statName": "Heap memory",
"valueName": "Used Mb",
"intervalName": "default",
"timeUnit": "MILLISECONDS"
},
"@maxValue": {
"producerName": "JavaRuntimeMax",
"statName": "JavaRuntimeMax",
"valueName": "Current Mb",
"intervalName": "default",
"timeUnit": "MILLISECONDS"
},
"caption": "Used memory"
},
{
"name": "Blocked",
"@minValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 0
},
"@currentValue": {
"producerName": "ThreadStates",
"statName": "BLOCKED",
"valueName": "Current",
"intervalName": "1m",
"timeUnit": "MILLISECONDS"
},
"@maxValue": {
"producerName": "ThreadCount",
"statName": "ThreadCount",
"valueName": "current",
"intervalName": "default",
"timeUnit": "MILLISECONDS"
},
"caption": "Blocked Threads"
},
{
"name": "Running",
"@minValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 0
},
"@currentValue": {
"producerName": "ThreadStates",
"statName": "RUNNABLE",
"valueName": "Current",
"intervalName": "1m",
"timeUnit": "MILLISECONDS"
},
"@maxValue": {
"producerName": "ThreadCount",
"statName": "ThreadCount",
"valueName": "current",
"intervalName": "default",
"timeUnit": "MILLISECONDS"
},
"caption": "Running Threads"
},
{
"name": "First Errors",
"@minValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 0
},
"@currentValue": {
"producerName": "ErrorProducer",
"statName": "cumulated",
"valueName": "initial",
"intervalName": "1m",
"timeUnit": "MILLISECONDS"
},
"@maxValue": {
"producerName": "ErrorProducer",
"statName": "cumulated",
"valueName": "maxinitial",
"intervalName": "default",
"timeUnit": "MILLISECONDS"
}
},
{
"name": "Total Errors",
"@minValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 0
},
"@currentValue": {
"producerName": "ErrorProducer",
"statName": "cumulated",
"valueName": "total",
"intervalName": "1m",
"timeUnit": "MILLISECONDS"
},
"@maxValue": {
"producerName": "ErrorProducer",
"statName": "cumulated",
"valueName": "maxtotal",
"intervalName": "default",
"timeUnit": "MILLISECONDS"
}
},
{
"name": "Shop Response",
"@minValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 0
},
"@currentValue": {
"producerName": "ShopService",
"statName": "placeOrder",
"valueName": "avg",
"intervalName": "1m",
"timeUnit": "MILLISECONDS"
},
"@maxValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 1000
}
},
{
"name": "SysLoad",
"@minValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 0
},
"@currentValue": {
"producerName": "OS",
"statName": "OS",
"valueName": "systemcpuload",
"intervalName": "default",
"timeUnit": "MILLISECONDS"
},
"@maxValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 100
},
"caption": "System CPU Load",
"@zones": [
{
"color": "green",
"left": 0.0,
"right": 0.5
},
{
"color": "yellow",
"left": 0.5,
"right": 0.75
},
{
"color": "orange",
"left": 0.75,
"right": 0.9
},
{
"color": "red",
"left": 0.9,
"right": 1.0
}
]
},
{
"name": "ProcLoad",
"@minValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 0
},
"@currentValue": {
"producerName": "OS",
"statName": "OS",
"valueName": "processcpuload",
"intervalName": "default",
"timeUnit": "MILLISECONDS"
},
"@maxValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 100
},
"caption": "Process CPU Load",
"@zones": [
{
"color": "green",
"left": 0.0,
"right": 0.5
},
{
"color": "yellow",
"left": 0.5,
"right": 0.75
},
{
"color": "orange",
"left": 0.75,
"right": 0.9
},
{
"color": "red",
"left": 0.9,
"right": 1.0
}
]
},
{
"name": "STAT REQ",
"@minValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 0
},
"@currentValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 1701
},
"@maxValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 3795
},
"caption": "Statistic request"
},
{
"name": "STAT TIME",
"@minValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 0
},
"@currentValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 580691088
},
"@maxValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": -322448430
},
"caption": "Statistic time"
},
{
"name": "STAT ERR",
"@minValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 0
},
"@currentValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 45
},
"@maxValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 235
},
"caption": "Statistic errors"
},
{
"name": "STAT CR",
"@minValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 0
},
"@currentValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 0
},
"@maxValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 18
},
"caption": "Statistic current requests"
},
{
"name": "STAT ERATE",
"@minValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 0
},
"@currentValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 2
},
"@maxValue": {
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"constant": 100
},
"caption": "Statistic error rate percent"
}
]
},
"@dashboardsConfig": {
"@dashboards": [
{
"name": "Example Dashboard",
"refresh": 60,
"charts": [
{
"caption": "Memory",
"accumulators": [
"Mem OldGenFree MB 1m",
"Mem OldGenUsed MB 1m"
]
},
{
"caption": "Threads",
"accumulators": [
"ThreadCount",
"ThreadStateBlocked-1m",
"ThreadStateRunnable-1m",
"ThreadStateTimedWaiting-1m",
"ThreadStateWaiting-1m"
]
},
{
"accumulators": [
"URL REQ 1m"
]
},
{
"accumulators": [
"URL Time 1m"
]
},
{
"accumulators": [
"URL AVG 1m"
]
},
{
"accumulators": [
"SessionCount Cur Absolute"
]
},
{
"accumulators": [
"CPU Time 1m"
]
},
{
"caption": "Errors",
"accumulators": [
"Errors.Cumulated.Initial",
"Errors.Cumulated.Total"
]
},
{
"caption": "Load",
"accumulators": [
"Process CPU Load 1m",
"System CPU Load 1m"
]
}
],
"thresholds": [
"ThreadCount",
"OldGenFree",
"PermGenFree"
],
"gauges": [
"Blocked",
"Memory",
"Running",
"Sessions",
"First Errors",
"Total Errors",
"ProcLoad",
"SysLoad"
],
"widgets": [
"thresholds",
"gauges",
"charts",
"producers"
]
},
{
"name": "Burger Board",
"refresh": 60,
"charts": [
{
"caption": "Orders",
"accumulators": [
"OrdersPerMinute"
]
},
{
"caption": "Memory",
"accumulators": [
"OldGenFree MB 1m",
"OldGenUsed MB 1m",
"PermGenFree MB 1m"
]
},
{
"caption": "Threads",
"accumulators": [
"ThreadCount",
"ThreadStateBlocked-1m",
"ThreadStateRunnable-1m",
"ThreadStateTimedWaiting-1m",
"ThreadStateWaiting-1m"
]
},
{
"accumulators": [
"URL REQ 1m"
]
},
{
"accumulators": [
"URL Time 1m"
]
},
{
"accumulators": [
"URL AVG 1m"
]
},
{
"accumulators": [
"SessionCount Cur Absolute"
]
},
{
"accumulators": [
"CPU Time 1m"
]
}
],
"thresholds": [
"OrderPerMinuteThreshold",
"ThreadCount",
"OldGenFree",
"PermGenFree"
],
"gauges": [
"Orders",
"Memory",
"Running",
"Sessions"
],
"widgets": [
"thresholds",
"gauges",
"charts",
"producers"
]
},
{
"name": "Service Board",
"refresh": 60,
"charts": [],
"chartPatterns": [
{
"caption": "Service Requests",
"accumulatorPatterns": [
"(.*)Service.REQ.1m"
],
"mode": "COMBINED"
},
{
"caption": "Service Errors",
"accumulatorPatterns": [
"(.*)Service.ERR.1m"
],
"mode": "COMBINED"
},
{
"caption": "Service TotalTime",
"accumulatorPatterns": [
"(.*)Service.TIME.1m"
],
"mode": "COMBINED"
},
{
"caption": "Service Average Duration",
"accumulatorPatterns": [
"(.*)Service.AVG.1m"
],
"mode": "COMBINED"
}
],
"producerNamePatterns": [
"(.*)Service"
],
"widgets": [
"thresholds",
"gauges",
"charts",
"producers"
]
},
{
"name": "Memory",
"refresh": 60,
"charts": [
{
"caption": "GC Current Count",
"accumulators": [
"GC PS MarkSweep current collection count 1m",
"GC PS Scavenge current collection count 1m"
]
},
{
"caption": "GC Current Time",
"accumulators": [
"GC PS MarkSweep current collection time 1m",
"GC PS Scavenge current collection time 1m"
]
},
{
"caption": "GC Total Count",
"accumulators": [
"GC PS MarkSweep total collection count 1m",
"GC PS Scavenge total collection count 1m"
]
},
{
"caption": "GC Total Time",
"accumulators": [
"GC PS MarkSweep total collection time 1m",
"GC PS Scavenge total collection time 1m"
]
},
{
"caption": "GC Current Count",
"accumulators": [
"GC Copy current collection count 1m",
"GC MarkSweepCompact current collection count 1m"
]
},
{
"caption": "GC Current Time",
"accumulators": [
"GC Copy current collection time 1m",
"GC MarkSweepCompact current collection time 1m"
]
},
{
"caption": "GC Total Count",
"accumulators": [
"GC Copy total collection count 1m",
"GC MarkSweepCompact total collection count 1m"
]
},
{
"caption": "GC Total Time",
"accumulators": [
"GC Copy total collection time 1m",
"GC MarkSweepCompact total collection time 1m"
]
},
{
"caption": "Memory High Profile",
"accumulators": [
"Mem OldGenFree MB 1m",
"Mem OldGenUsed MB 1m"
]
},
{
"caption": "Memory Low Profile",
"accumulators": [
"Mem TenuredGenFree MB 1m",
"Mem TenuredGenUsed MB 1m"
]
}
],
"widgets": [
"thresholds",
"gauges",
"charts",
"producers"
]
},
{
"name": "Empty Dashboard",
"refresh": 60,
"widgets": [
"thresholds",
"gauges",
"charts",
"producers"
]
},
{
"name": "Statistics",
"refresh": 60,
"charts": [
{
"caption": "Statistics REQ 1m",
"accumulators": [
"Statistics.REQ.1m"
]
},
{
"caption": "Statistics TIME 1m",
"accumulators": [
"Statistics.TIME.1m"
]
},
{
"caption": "Statistics ERR 1m",
"accumulators": [
"Statistics.ERR.1m"
]
},
{
"caption": "Statistics CR 1m",
"accumulators": [
"Statistics.CR.1m"
]
},
{
"caption": "Statistics MCR 1m",
"accumulators": [
"Statistics.MCR.1m"
]
},
{
"caption": "Statistics MAX 1m",
"accumulators": [
"Statistics.MAX.1m"
]
},
{
"caption": "Statistics AVG 1m",
"accumulators": [
"Statistics.AVG.1m"
]
},
{
"caption": "Statistics ERATE 1m",
"accumulators": [
"Statistics.ERATE.1m"
]
}
],
"gauges": [
"STAT REQ",
"STAT ERR",
"STAT CR",
"STAT ERATE"
],
"producers": [
"ServiceStatistics"
],
"widgets": [
"thresholds",
"gauges",
"charts",
"producers"
]
}
]
},
"@loadFactorsConfig": {
"@factors": [
{
"name": "ShopController2ServiceREQ",
"metric": "req",
"interval": "default",
"@left": {
"producerName": "OrderController",
"category": "",
"subsystem": ""
},
"@right": {
"producerName": "",
"category": "service",
"subsystem": ""
}
},
{
"name": "ShopService2NotificationTime",
"metric": "req",
"interval": "1m",
"@left": {
"producerName": "ShopService",
"category": "",
"subsystem": ""
},
"@right": {
"producerName": "NotificationService",
"category": "",
"subsystem": ""
}
}
]
},
"@accumulatorsConfig": {
"accumulationAmount": 200,
"@accumulators": [
{
"name": "OrdersPerMinute",
"producerName": "ShopService",
"statName": "placeOrder",
"valueName": "req",
"intervalName": "1m",
"timeUnit": "MILLISECONDS",
"accumulationAmount": 0
},
{
"name": "System CPU Load 1m",
"producerName": "OS",
"statName": "OS",
"valueName": "systemcpuload",
"intervalName": "default",
"timeUnit": "MILLISECONDS",
"accumulationAmount": 0
},
{
"name": "Process CPU Load 1m",
"producerName": "OS",
"statName": "OS",
"valueName": "processcpuload",
"intervalName": "default",
"timeUnit": "MILLISECONDS",
"accumulationAmount": 0
},
{
"name": "ThreadCount",
"producerName": "ThreadCount",
"statName": "ThreadCount",
"valueName": "current",
"intervalName": "default",
"timeUnit": "MILLISECONDS",
"accumulationAmount": 0
},
{
"name": "ThreadStateRunnable-1m",
"producerName": "ThreadStates",
"statName": "RUNNABLE",
"valueName": "current",
"intervalName": "1m",
"timeUnit": "MILLISECONDS",
"accumulationAmount": 0
},
{
"name": "ThreadStateWaiting-1m",
"producerName": "ThreadStates",
"statName": "TIMED_WAITING",
"valueName": "current",
"intervalName": "1m",
"timeUnit": "MILLISECONDS",
"accumulationAmount": 0
},
{
"name": "ThreadStateTimedWaiting-1m",
"producerName": "ThreadStates",
"statName": "WAITING",
"valueName": "current",
"intervalName": "1m",
"timeUnit": "MILLISECONDS",
"accumulationAmount": 0
},
{
"name": "ThreadStateBlocked-1m",
"producerName": "ThreadStates",
"statName": "BLOCKED",
"valueName": "current",
"intervalName": "1m",
"timeUnit": "MILLISECONDS",
"accumulationAmount": 0
},
{
"name": "ThreadStateRunnable-5m",
"producerName": "ThreadStates",
"statName": "RUNNABLE",
"valueName": "current",
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"accumulationAmount": 0
},
{
"name": "ThreadStateWaiting-5m",
"producerName": "ThreadStates",
"statName": "TIMED_WAITING",
"valueName": "current",
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"accumulationAmount": 0
},
{
"name": "ThreadStateTimedWaiting-5m",
"producerName": "ThreadStates",
"statName": "WAITING",
"valueName": "current",
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"accumulationAmount": 0
},
{
"name": "ThreadStateBlocked-5m",
"producerName": "ThreadStates",
"statName": "BLOCKED",
"valueName": "current",
"intervalName": "5m",
"timeUnit": "MILLISECONDS",
"accumulationAmount": 0
}
],
"@accumulatorSets": [
{
"name": "GC 1 minute",
"accumulatorNames": [
"GC G1 Young Generation collection count 1m",
"GC G1 Young Generation collection time 1m",
"GC G1 Concurrent GC collection count 1m",
"GC G1 Concurrent GC collection time 1m",
"GC G1 Old Generation collection count 1m",
"GC G1 Old Generation collection time 1m"
],
"mode": "MULTIPLE"
},
{
"name": "Tomcat 1 minute",
"accumulatorNames": [
"http-nio-8080 request count 1m",
"http-nio-8080 bytes sent 1m",
"http-nio-8080 bytes received 1m",
"http-nio-8080 processing time 1m",
"http-nio-8080 error count 1m",
"ajp-nio-127.0.0.1-8009 request count 1m",
"ajp-nio-127.0.0.1-8009 bytes sent 1m",
"ajp-nio-127.0.0.1-8009 bytes received 1m",
"ajp-nio-127.0.0.1-8009 processing time 1m",
"ajp-nio-127.0.0.1-8009 error count 1m"
],
"mode": "MULTIPLE"
}
],
"@autoAccumulators": [
{
"namePattern": "$PRODUCERNAME.REQ.1m",
"producerNamePattern": "(.*)Service",
"statName": "cumulated",
"valueName": "req",
"intervalName": "1m",
"timeUnit": "MILLISECONDS",
"accumulationAmount": 0
},
{
"namePattern": "$PRODUCERNAME.TIME.1m",
"producerNamePattern": "(.*)Service",
"statName": "cumulated",
"valueName": "time",
"intervalName": "1m",
"timeUnit": "MILLISECONDS",
"accumulationAmount": 0
},
{
"namePattern": "$PRODUCERNAME.AVG.1m",
"producerNamePattern": "(.*)Service",
"statName": "cumulated",
"valueName": "avg",
"intervalName": "1m",
"timeUnit": "MILLISECONDS",
"accumulationAmount": 0
},
{
"namePattern": "$PRODUCERNAME.ERR.1m",
"producerNamePattern": "(.*)Service",
"statName": "cumulated",
"valueName": "err",
"intervalName": "1m",
"timeUnit": "MILLISECONDS",
"accumulationAmount": 0
}
]
},
"@pluginsConfig": {
"plugins": [
{
"name": "NoOpPlugin",
"className": "net.anotheria.moskito.core.plugins.NoOpPlugin",
"configurationName": "none"
}
]
},
"@mbeanProducersConfig": {
"registerAutomatically": false,
"updateAutomatically": true,
"delayBeforeFirstUpdate": 15000
},
"@builtinProducersConfig": {
"javaMemoryProducers": true,
"javaMemoryPoolProducers": true,
"javaThreadingProducers": true,
"osProducer": true,
"runtimeProducer": true,
"mbeanProducers": true,
"gcProducer": true,
"errorProducer": true,
"requestStatisticProducer": true
},
"@topProducersConfig": {
"enabled": true,
"intervalName": "1m"
},
"@tomcatRequestProcessorProducerConfig": {
"ajp": true,
"http": true
},
"@tracingConfig": {
"tracingEnabled": true,
"loggingEnabled": true,
"inspectEnabled": true,
"maxTraces": 20,
"tracers": [
"ShopService"
],
"shrinkingStrategy": "KEEPLONGEST"
},
"@journeyConfig": {
"parameterLengthLimit": 100,
"toStringCollections": true,
"toStringMaps": true,
"exclusionURLs": [],
"exclusionURLPrefixes": [],
"exclusionURLSuffixes": []
},
"@errorHandlingConfig": {
"autoChartErrors": true,
"autoChartErrorsInterval": "1m",
"logErrors": true,
"@catchers": [
{
"exceptionClazz": "java.lang.IllegalArgumentException",
"target": "LOGANDMEMORY",
"parameter": "IllegalArgExcLog"
},
{
"exceptionClazz": "org.moskito.demo.burgershop.burgershopspring.service.InvalidIngredientException",
"target": "MEMORY",
"parameter": ""
}
],
"@defaultCatchers": [],
"catchersMemoryErrorLimit": 50,
"countRethrows": true
},
"@filterConfig": {
"caseExtractors": [
"net.anotheria.moskito.web.filters.caseextractor.RequestURICaseExtractor",
"net.anotheria.moskito.web.filters.caseextractor.RefererCaseExtractor",
"net.anotheria.moskito.web.filters.caseextractor.MethodCaseExtractor",
"net.anotheria.moskito.web.filters.caseextractor.UserAgentCaseExtractor",
"net.anotheria.moskito.web.filters.caseextractor.DomainCaseExtractor"
]
},
"@taggingConfig": {
"autotagSessionId": true,
"autotagIp": true,
"autotagUserAgent": true,
"autotagReferer": true,
"autotagUrl": true,
"autotagServerName": true,
"@customTags": [
{
"name": "customerId",
"attribute": "session.customerId"
},
{
"attribute": "null.null"
},
{
"attribute": "null.null"
}
],
"tagHistorySize": 10
}
}