Hello,
i want to collect metrics throught jmx plugin, but split them on more than only one dimension :
{
"timeseries": {
"key": "metric_put_batch_avg_time_ms_",
"unit": "MilliSecond",
"displayname": "KafkaConnect-put-batch-avg-time-ms",
"dimensions": [
"rx_pid",
"task"
]
},
"source": {
"domain": "kafka.connect",
"keyProperties": {
"type": "sink-task-metrics",
"task": "*"
},
"attribute": "put-batch-avg-time-ms",
"allowAdditionalKeys": true,
"calculateDelta": false,
"calculateRate": false,
"aggregation": "AVG",
"splitting": {
"name": "task",
"type": "keyProperty",
"keyProperty": "task"
}
}
}
In this exemple, it's ok for the dimension "task", but i want to add an other dimension. OK to add the dimension:
"dimensions": [
"rx_pid",
"task",
"connector"
]
But how to add it in the splitting field ? Is there something else to add ?
Thanks.
Maybe it is not an answer for your question but I have checked a jmx metric with 3 dimensons in an environment with timeseries API and metric API too. See the results, maybe it helps for you.
Timeseries APIv1
{
"timeseriesId": "custom.jmx.PendingRequestCount_V21663771262394:metric_PendingRequestCount_1663771256883",
"displayName": "PendingRequestCount",
"dimensions": [
"PROCESS_GROUP_INSTANCE",
"Process ID",
"Name"
],
"aggregationTypes": [
"AVG",
"SUM",
"MIN",
"MAX"
],
"unit": "Count (count)",
"filter": "PLUGIN",
"detailedSource": "PendingRequestCount_V2",
"pluginId": "custom.jmx.PendingRequestCount_V21663771262394",
"types": [],
"warnings": []
}
Metrics APIv2
{
"metricId": "ext:custom.jmx.PendingRequestCount_V2.metric_PendingRequestCount_1663771256883",
"displayName": "PendingRequestCount",
"description": "",
"unit": "Count",
"dduBillable": true,
"created": 1663771262476,
"lastWritten": 1665587469308,
"entityType": [
"PROCESS_GROUP_INSTANCE"
],
"aggregationTypes": [
"auto",
"avg",
"count",
"max",
"min",
"sum"
],
"transformations": [
"filter",
"fold",
"limit",
"merge",
"names",
"parents",
"timeshift",
"sort",
"last",
"splitBy",
"lastReal",
"setUnit"
],
"defaultAggregation": {
"type": "avg"
},
"dimensionDefinitions": [
{
"key": "dt.entity.process_group_instance",
"name": "Process",
"displayName": "Process",
"index": 0,
"type": "ENTITY"
},
{
"key": "rx_pid",
"name": "rx_pid",
"displayName": "rx_pid",
"index": 1,
"type": "NUMBER"
},
{
"key": "Name",
"name": "Name",
"displayName": "Name",
"index": 2,
"type": "STRING"
}
],
"tags": [],
"metricValueType": {
"type": "unknown"
},
"scalar": false,
"resolutionInfSupported": true
}
Best regards,
Mizső
Thanks for you're suggestion.
It's possible because when i ingest some metrics they can be automatically split on many dimension, but i don't fine any documentation to define this in a custom plugin.
It was a good idea to check th e metrics throught the API, but it doesn't help me much 😞