Telemetry to FluentD Streaming (TFS) Plugin REST API
The following authentication types are supported:
basic (/ufmRest)
client (/ufmRestV2)
token (/ufmRestV3)
For complete instructions on how to deploy the TFS plugin and the detailed plugin’s APIs, refer to UFM Telemetry Endpoint Stream to Fluent Endpoint (TFS).
Description: Gets the current streaming configurations
URL: GET ufmRest/plugin/tfs/conf
Request Data: N/A
Response:
{
"ufm-telemetry-endpoint": [{
"host": "127.0.0.1",
"url": "csv/metrics",
"port": 9001,
"interval": 10,
"message_tag_name": "high_freq_endpoint"
}],
"fluentd-endpoint": {
"host": "10.209.36.68",
"port": 24226
},
"streaming": {
"compressed_streaming": true,
"bulk_streaming": true,
"enabled": true,
"stream_only_new_samples": true
},
"logs-config": {
"log_file_backup_count": 5,
"log_file_max_size": 10485760,
"logs_file_name": "/log/tfs.log",
"logs_level": "INFO"
},
"meta-fields":{
"alias_node_description": "node_name",
"alias_node_guid": "AID",
"add_type":"csv"
}
}
• Description: Sets/updates streaming configurations
• URL: POST ufmRest/plugin/tfs/conf
• Request Data:
{
"ufm-telemetry-endpoint": [{
"host": "127.0.0.1",
"url": "csv/metrics",
"port": 9001,
"interval": 10,
"message_tag_name": "high_freq_endpoint"
}],
"fluentd-endpoint": {
"host": "10.209.36.68",
"port": 24226
},
"streaming": {
"compressed_streaming": true,
"bulk_streaming": true,
"enabled": true,
"stream_only_new_samples": true
},
"logs-config": {
"log_file_backup_count": 5,
"log_file_max_size": 10485760,
"logs_file_name": "/log/tfs.log",
"logs_level": "INFO"
},
"meta-fields":{
"alias_node_description": "node_name",
"alias_node_guid": "AID",
"add_type":"csv"
}
}
Response: string “set configurations has been done successfully”
Status Codes:
200 – Ok.
400 – bad request (bad or missing parameters).
To retrieve metrics from several endpoints, you can configure the TFS plugin to retrieve them. This can be done by adding the telemetry endpoint configurations through the configuration API. Each endpoint that you add has a separate retrieving process or streaming interval. The below is an example payload that includes configurations for multiple UFM telemetry endpoints:
{
"ufm-telemetry-endpoint"
: [{
"host"
: "127.0.0.1"
,
"url"
: "csv/metrics"
,
"port"
: 9001
,
"interval"
: 10
,
"message_tag_name"
: "high_freq_endpoint"
},{
"host"
: "127.0.0.1"
,
"url"
: "csv/metrics"
,
"port"
: 9002
,
"interval"
: 60
,
"message_tag_name"
: "low_freq_endpoint"
}],
"fluentd-endpoint"
: {
"host"
: "10.209.36.68"
,
"port"
: 24226
}
}
Description: Gets the current streaming attributes configurations (the enabled/disabled attributes and also their streamed names)
URL: GET ufmRest/plugin/tfs/attributes
Request Data: N/A
Response:
{ ...
"ExcessiveBufferOverrunErrorsExtended"
: {
"enabled"
: true
,
"name"
: "ExcessiveBufferOverrunErrorsExtended"
},
"LinkDownedCounterExtended"
: {
"enabled"
: true
,
"name"
: "LinkDownedCounterExtended"
},
"LinkErrorRecoveryCounterExtended"
: {
"enabled"
: true
,
"name"
: "LinkErrorRecoveryCounterExtended"
},
"LocalLinkIntegrityErrorsExtended"
: {
"enabled"
: true
,
"name"
: "LocalLinkIntegrityErrorsExtended"
}
...
}
Description: Sets/updates streaming attributes configurations
URL: POST ufmRest/plugin/tfs/attributes
Request Data:
{ ...
"ExcessiveBufferOverrunErrorsExtended"
: {"enabled"
:true
,"name"
:"ExcBuffOverrunErrExt"
},"LinkDownedCounterExtended"
: {"enabled"
:false
},"LinkErrorRecoveryCounterExtended"
: {"enabled"
:true
,"name"
:"linkErrRecCountExt"
},"LocalLinkIntegrityErrorsExtended"
: {"enabled"
:true
,"name"
:"localLinkIntErrExt"
} ... }Response: “Set attributes configurations has been done successfully”
Status Codes:
200 – Ok
400 – Bad request (bad or missing parameters)