Create an OpenTelemetry Collector
Create an OpenTelemetry Collector.
Request
Security
| Any | Super User | System Admin | Security Admin | Operator |
|---|---|---|---|---|
| superUser | systemAdmin |
HTTP method
POST /managerapi/json/1.0/createOpenTelemetryCollector.adm HTTP/1.1 Host:{manager.dsnet}
name={name}&description={description}&metricsEnabled={true|false}&metrics.scrapeInterval=15
&tracesEnabled={true|false}&traces.samplingPercentage=50.50&traces.includeServiceNames={traces.includeServiceNames}&traces.redactionEnabled=false
&proxyEnabled={true|false}
Curl method
curl -u {admin}:{password} -k
'https://{manager.dsnet}/manager/api/json/1.0/createOpenTelemetryCollector.adm' -d 'name={name}
&description={description} &metricsEnabled={true|false} &metrics.scrapeInterval=15
&tracesEnabled={true|false} &traces.samplingPercentage=50.50
&traces.includeServiceNames={traces.includeServiceNames} &traces.redactionEnabled=false
&proxyEnabled={true|false}'
Parameters
| Parameter | Type | Usage | Default | Description |
|---|---|---|---|---|
| name | String | Required | The name for the collector. | |
| description | String | Optional | The description for the collector. | |
| caCertificatePem | String | Optional | The CA certificate(s) used to establish trust in PEM format. Each certificate must be a root CA certificate. If not configured, the system's default trust store will be used and should be sufficient for cloud-based providers. | |
| metricsEnabled | Boolean | Required | Flag representing whether metric collection is enabled or not. | |
| metrics.scrapeInterval | Long | Required if there is at least one other request parameter with the prefix “metrics.” or metricsEnabled=true. | The metric scrape interval specified in seconds. 1 hour maximum value. | |
| metrics.includeMatchType | String | Required if metrics.includeMetricNames is specified. | Indicates whether the specified metric names are strict matches or regular expressions. If both include and exclude names are specified, metrics are included first. | |
| metrics.includeMetricNames | List | Required if metrics.includeMatchType is specified. | Include only the metrics matching these names. | |
| metrics.excludeMatchType | String | Required if metrics.excludeMetricNames is specified. | Indicates whether the specified metric names are strict matches or regular expressions. If both include and exclude names are specified, metrics are included first. | |
| metrics.excludeMetricNames | List | Required if metrics.excludeMatchType is specified. | Exclude metrics matching these names. | |
| tracesEnabled | Boolean | Required | Flag representing whether trace collection is enabled or not. | |
| traces.samplingPercentage | Number | Required if there is at least one other request parameter with the prefix “traces.” or tracesEnabled=true. | The percentage of traces this collector will sample. This is a head-based sampling decision. This means that the choice to sample a trace is made at the beginning or root of the request, operation, etc and is propagated downstream. All child spans generated by collectors deployed to downstream devices will be exporterd if the trace is sampled. Differences in sampling percentage for collectors deployed to downstream devices do not impact this behavior. For example, if the sampling percentage is 75 and a collector deployed on an access pool and 50 for a collector deployed on downstream storage pool sets, 75% of all S3 requests executed in the access pool will be sampled. The sampling percentage of 50 on the storage pool sets do not reduce the number of child spans that are exported of the trace that is sampled. | |
| traces.includeServiceNames | List | Required if there is at least one other request parameter with the prefix “traces.” or tracesEnabled=true. | Indicates that spans originating from these services will be included. | |
| traces.includeSpanNameMatchType | String | Required if traces.includeSpanNames is specified. | Indicates whether the specified span names are strict matches or regular expressions. If both include and exclude names are specified, spans are included first. | |
| traces.includeSpanNames | List | Required if traces.includeSpanNameMatchType is specified. | Include only the spans matching these names. | |
| traces.excludeSpanNameMatchType | String | Required if traces.excludeSpanNames is specified. | Indicates whether the specified span names are strict matches or regular expressions. If both include and exclude names are specified, spans are included first. | |
| traces.excludeSpanNames | List | Required if traces.excludeSpanNameMatchType is specified | Exclude the spans matching these names. | |
| traces.redactionEnabled | Boolean | Required if there is at least one other request parameter with the prefix “traces.” or tracesEnabled=true. | Indicates if span redaction is enabled or not. | |
| traces.redaction.ignoredSpanAttributeKeys | List | Optional | The full set of span attribute keys that will bypass this collector's redaction processor. | |
| traces.redaction.allSpanAttributeKeysAllowed | Boolean | Required if there is at least one other request parameter with the prefix “traces.redaction” or traces.redactionEnabled=true. | Indicates if all span attribute keys are allowed or not. If false, keys not specified in allowedSpanAttributeKeys will be removed from the span. | |
| traces.redaction.allowedSpanAttributeKeys | List | Required if traces.redaction.allSpanAttributeKeysAllowed=false | The full set of span attribute keys that are allowed to be part of span. Any attribute whose key is not is this list is removed from the span. May be specified as empty which means that no keys are allowed. | |
| traces.redaction.blockedSpanAttributeKeyRegex | Boolean | Required if traces.redaction.blockedSpanAttributeKeys is specified. | Indicates whether the specified blocked span attribute keys are regular expressions. | |
| traces.redaction.blockedSpanAttributeKeys | List | Required if traces.redaction.blockedSpanAttributeKeyRegex is specified | Block the span attribute key values matching these elements. | |
| accessPoolIds | List | Optional | Set of access pools in which the collector will be deployed. An access pool may only have one collector deployed on it. | |
| storagePoolSetIds | List | Optional | Set of storage pool sets in which the collector will be deployed. A storage pool set may only have one collector deployed on it. | |
| deviceIds | List | Optional | Set of devices in which the collector will be deployed. A device may only have one collector deployed on it. | |
| proxyEnabled | Boolean | Required | Flag representing whether communication with all exporters will use a proxy or not. | |
| proxy.url | String | Required if there is at least one other request parameter with the prefix “proxy.” or proxyEnabled=true. | The URL of the proxy. Must be an HTTP or HTTPS URL. Optionally can include a port. | |
| proxy.authenticated | Boolean | Required if there is at least one other request parameter with the prefix “proxy.” or proxyEnabled=true. | Flag representing whether the HTTP proxy server requires authentication. | |
| proxy.username | String | If proxy.authenticated=true | The username used to authenticate with the HTTP proxy server. | |
| proxy.password | String | If proxy.authenticated=true | The password used to authenticate with the HTTP proxy server. |
Response
Success or failure status. ID of the newly created collector.
JSON response example
{
"responseStatus": "ok",
"responseHeader": {
"now": {milliseconds from the UNIX epoch},
"status": "ok",
"requestId": "ZyE1ei0wg3xtOqhF5_mLcAAAAMA"
},
"responseData": {
"id": 1
}
}
Parameters
| Parameter | Type | Description |
|---|---|---|
| id | Long |