Zum Inhalt springen

Create and manage destinations

To configure a destination, you need to provide a destination uri, a type and an authentication.

You add the destination configuration as JSON key called config to the appropriate requests. The following table represents the available keys within this object:

The Basic-Auth object consists of two keys:

Example of a config object for an S3-compatible storage destination

Section titled “Example of a config object for an S3-compatible storage destination”
{
basicAuth: {
username: 'stackit-open-telemetry-client',
password: 'my-top-secret-password'
},
configType: 'S3',
uri: 'https://my-s3-bucket.on-prem-cloud.example.com'
}

Example of a config object for an OpenTelemetry destination

Section titled “Example of a config object for an OpenTelemetry destination”
{
"basicAuth": {
"username": "stackit-open-telemetry-client",
"password": "my-top-secret-password"
},
"configType": "OpenTelemetry",
"uri": "https://my-opentelemetry-destination.on-prem-cloud.example.com"
}

To create a Telemetry Router destination, you need to call the appropriate endpoint.

Choose the properties for your new destination

Section titled “Choose the properties for your new destination”
Terminal window
curl -X POST \
'https://telemetry-router.api.[regionId].stackit.cloud/v1alpha/projects/[projectId]/regions/[regionId]/telemetry-routers/[telemetryRouterId]/destinations' \
--header 'Authorization: Bearer [accessToken]' \
--header 'Content-Type: application/json' \
--data-raw '{
"displayName": [displayName],
"description": [description],
"config": [config]
}'

Example for an S3-compatible storage destination

Section titled “Example for an S3-compatible storage destination”
Terminal window
curl -X POST \
'https://telemetry-router.api.eu01.stackit.cloud/v1alpha/projects/16dbfb51-7a75-42d3-a51d-99f87f48cd32/regions/eu01/telemetry-routers/d5b5cdcc-c155-4d66-82ef-4289db8e4557/destinations' \
--header 'Authorization: Bearer eyJhbGci0iJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIi0iIxMjM0NTY30DkwIiwibmFtZSI6IkpvaG4gRG91IiwiaXNTb2NpYWwiOnRydWV9.4pcPyMD09o1PSyXnrXCjTwXyr4BsezdI1AVTmud2fU4' \
--header 'Content-Type: application/json' \
--data-raw '{
"displayName": "my-telemetry-destination",
"description": "My telemetry destination",
"config": {
"basicAuth": {
"username": "stackit-open-telemetry-client",
"password": "my-top-secret-password"
},
"configType": "S3",
"uri": "https://my-s3-bucket.on-prem-cloud.example.com"
}
}'
Terminal window
curl -X POST \
'https://telemetry-router.api.eu01.stackit.cloud/v1alpha/projects/16dbfb51-7a75-42d3-a51d-99f87f48cd32/regions/eu01/telemetry-routers/d5b5cdcc-c155-4d66-82ef-4289db8e4557/destinations' \
--header 'Authorization: Bearer eyJhbGci0iJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIi0iIxMjM0NTY30DkwIiwibmFtZSI6IkpvaG4gRG91IiwiaXNTb2NpYWwiOnRydWV9.4pcPyMD09o1PSyXnrXCjTwXyr4BsezdI1AVTmud2fU4' \
--header 'Content-Type: application/json' \
--data-raw '{
"displayName": "my-telemetry-destination",
"description": "My telemetry destination",
"config": {
"basicAuth": {
"username": "stackit-open-telemetry-client",
"password": "my-top-secret-password"
},
"configType": "OpenTelemetry",
"uri": "https://my-opentelemetry-destination.on-prem-cloud.example.com"
}
}'
Terminal window
curl -X GET \
'https://telemetry-router.api.[regionId].stackit.cloud/v1alpha/projects/[projectId]/regions/[regionId]/telemetry-routers/[telemetryRouterId]/destinations' \
--header 'Authorization: Bearer [accessToken]' \
--header 'Content-Type: application/json'
Terminal window
curl -X GET \
'https://telemetry-router.api.eu01.stackit.cloud/v1alpha/projects/16dbfb51-7a75-42d3-a51d-99f87f48cd32/regions/eu01/telemetry-routers/d5b5cdcc-c155-4d66-82ef-4289db8e4557/destinations' \
--header 'Authorization: Bearer eyJhbGci0iJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIi0iIxMjM0NTY30DkwIiwibmFtZSI6IkpvaG4gRG91IiwiaXNTb2NpYWwiOnRydWV9.4pcPyMD09o1PSyXnrXCjTwXyr4BsezdI1AVTmud2fU4' \
--header 'Content-Type: application/json'
Terminal window
curl -X GET \
'https://telemetry-router.api.[regionId].stackit.cloud/v1alpha/projects/[projectId]/regions/[regionId]/telemetry-routers/[telemetryRouterId]/destinations/[destinationId]' \
--header 'Authorization: Bearer [accessToken]' \
--header 'Content-Type: application/json'
Terminal window
curl -X GET \
'https://telemetry-router.api.eu01.stackit.cloud/v1alpha/projects/16dbfb51-7a75-42d3-a51d-99f87f48cd32/regions/eu01/telemetry-routers/d5b5cdcc-c155-4d66-82ef-4289db8e4557/destinations/60e59099-8209-4b69-a553-239fd79038a3' \
--header 'Authorization: Bearer eyJhbGci0iJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIi0iIxMjM0NTY30DkwIiwibmFtZSI6IkpvaG4gRG91IiwiaXNTb2NpYWwiOnRydWV9.4pcPyMD09o1PSyXnrXCjTwXyr4BsezdI1AVTmud2fU4' \
--header 'Content-Type: application/json'
Terminal window
curl -X PUT \
'https://telemetry-router.api.[regionId].stackit.cloud/v1alpha/projects/[projectId]/regions/[regionId]/telemetry-routers/[telemetryRouterId]/destinations/[destinationId]' \
--header 'Authorization: Bearer [accessToken]' \
--header 'Content-Type: application/json'
--data-raw '{
"displayName": [name],
"description": [description],
"config": [config]
}'

Example of editing a destination to an S3 compatible storage to an existing Telemetry Router instance

Section titled “Example of editing a destination to an S3 compatible storage to an existing Telemetry Router instance”
Terminal window
curl -X PUT \
'https://telemetry-router.api.eu01.stackit.cloud/v1alpha/projects/16dbfb51-7a75-42d3-a51d-99f87f48cd32/regions/eu01/telemetry-routers/d5b5cdcc-c155-4d66-82ef-4289db8e4557/destinations/60e59099-8209-4b69-a553-239fd79038a3' \
--header 'Authorization: Bearer eyJhbGci0iJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIi0iIxMjM0NTY30DkwIiwibmFtZSI6IkpvaG4gRG91IiwiaXNTb2NpYWwiOnRydWV9.4pcPyMD09o1PSyXnrXCjTwXyr4BsezdI1AVTmud2fU4' \
--header 'Content-Type: application/json' \
--data-raw '{
"config": {
"basicAuth": {
"username": "stackit-open-telemetry-client",
"password": "my-top-secret-password"
},
"configType": "S3",
"uri": "https://my-s3-bucket.on-prem-cloud.example.com"
}
}'

Example of editing a destination to an OpenTelemetry storage to an existing Telemetry Router instance

Section titled “Example of editing a destination to an OpenTelemetry storage to an existing Telemetry Router instance”
Terminal window
curl -X PUT \
'https://telemetry-router.api.eu01.stackit.cloud/v1alpha/projects/16dbfb51-7a75-42d3-a51d-99f87f48cd32/regions/eu01/telemetry-routers/d5b5cdcc-c155-4d66-82ef-4289db8e4557/destinations/60e59099-8209-4b69-a553-239fd79038a3' \
--header 'Authorization: Bearer eyJhbGci0iJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIi0iIxMjM0NTY30DkwIiwibmFtZSI6IkpvaG4gRG91IiwiaXNTb2NpYWwiOnRydWV9.4pcPyMD09o1PSyXnrXCjTwXyr4BsezdI1AVTmud2fU4' \
--header 'Content-Type: application/json' \
--data-raw '{
"config": {
"basicAuth": {
"username": "stackit-open-telemetry-client",
"password": "my-top-secret-password"
},
"configType": "OpenTelemetry",
"uri": "https://my-opentelemetry-destination.on-prem-cloud.example.com"
}
}'

To delete a Telemetry Router instance, you need to call the DELETE endpoint.

Terminal window
curl -X DELETE \
'https://telemetry-router.api.[regionId].stackit.cloud/v1alpha/projects/[projectId]/regions/[regionId]/telemetry-routers/[telemetryRouterId]/destinations/[destinationId]' \
--header 'Authorization: Bearer [accessToken]' \
--header 'Content-Type: application/json' \

Example:

Terminal window
curl -X DELETE \
'https://telemetry-router.api.eu01.stackit.cloud/v1alpha/projects/16dbfb51-7a75-42d3-a51d-99f87f48cd32/regions/eu01/telemetry-routers/d5b5cdcc-c155-4d66-82ef-4289db8e4557/destinations/60e59099-8209-4b69-a553-239fd79038a3' \
--header 'Authorization: Bearer eyJhbGci0iJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIi0iIxMjM0NTY30DkwIiwibmFtZSI6IkpvaG4gRG91IiwiaXNTb2NpYWwiOnRydWV9.4pcPyMD09o1PSyXnrXCjTwXyr4BsezdI1AVTmud2fU4' \
--header 'Content-Type: application/json' \