Create an OpenTelemetry Collector

Create an OpenTelemetry Collector.

Request

Security

Table 1. Roles capable of executing the Create an OpenTelemetry Collector API method
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

Table 2. Request parameters for Create OpenTelemetry Collector (createOpenTelemetryCollector) API method
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

Table 3. Response parameters for Create IBM COS OpenTelemetry Collector (createOpenTelemetryCollector) API method
Parameter Type Description
id Long