Skip to content

Commit

Permalink
chore: Dynatrace tile (#8288)
Browse files Browse the repository at this point in the history
create a dynatrace tile on the plugin hub
  • Loading branch information
lena-larionova authored Dec 17, 2024
1 parent 5849fd0 commit 68f53ef
Show file tree
Hide file tree
Showing 6 changed files with 157 additions and 111 deletions.
38 changes: 38 additions & 0 deletions app/_hub/dynatrace/dynatrace/_metadata/_index.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: Dynatrace
publisher: Dynatrace

categories:
- premium-partner
- security

search_aliases:
- opentelemetry
- telemetry
- otel
- otlp
- analytics
- monitoring
- security

type: integration
premiumpartner: true
enterprise: false
konnect: true

desc: Set up Dynatrace with the OpenTelemetry plugin to send logs and metrics to Dynatrace

# support_url:
# source_code:

kong_version_compatibility:
community_edition:
compatible:
- 3.8.x
- 3.9.x
enterprise_edition:
compatible:
- 3.8.x
- 3.9.x

dbless_compatible: yes

7 changes: 7 additions & 0 deletions app/_hub/dynatrace/dynatrace/overview/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
nav_title: Overview
---

Kong provides a Dynatrace integration through its OpenTelemetry plugin.

{% include_cached /md/plugins-hub/dynatrace.md %}
1 change: 1 addition & 0 deletions app/_hub/dynatrace/dynatrace/schemas/_index.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
112 changes: 1 addition & 111 deletions app/_hub/kong-inc/opentelemetry/how-to/_dynatrace.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,114 +6,4 @@ minimum_version: 3.8.x

<span class="badge premiumpartner"></span>

Set up the OpenTelemetry plugin to send logs and metrics to Dynatrace.

## Prerequisites
* Install the `contrib` version of the [OpenTelemetry Collector](https://opentelemetry.io/docs/collector/installation/).
The `contrib` version is necessary for generating metrics.
* {{site.base_gateway}} 3.8+

## Configure {{site.base_gateway}}

Set the following parameters in your [`kong.conf`](/gateway/latest/production/kong-conf/) file:

```
tracing_instrumentations = all
tracing_sampling_rate = 1.0
```

## Configure the OpenTelemetry plugin

Adjust the `{OPENTELEMETRY_COLLECTOR}` variable with your own collector endpoint:

<!--vale off-->
{% plugin_example %}
plugin: kong-inc/opentelemetry
name: opentelemetry
config:
traces_endpoint: "https://{your-environment-id}.live.dynatrace.com/api/v2/otlp/v1/traces"
logs_endpoint: "https://{your-environment-id}.live.dynatrace.com/api/v2/otlp/v1/logs"
resource_attributes:
service.name: kong-dev
targets:
- service
- route
- consumer
- global
formats:
- curl
- konnect
- yaml
- kubernetes
- terraform
{% endplugin_example %}
<!--vale on-->

## Configure the OpenTelemetry Collector

Configure your OpenTelemetry Collector to send data to the Dynatrace environment.

The following example OpenTelemetry configuration shows how to export traces and logs:

```yaml
receivers:
otlp:
protocols:
http:
endpoint: 0.0.0.0:4318

exporters:
otlphttp:
endpoint: "https://{your-environment-id}.live.dynatrace.com/api/v2/otlp"
headers:
"Authorization": "Api-Token <your-api-token>"

service:
pipelines:
traces:
receivers: [otlp]
processors: []
exporters: [otlphttp]
logs:
receivers: [otlp]
processors: []
exporters: [otlphttp]
```
## Export application span metrics
To include span metrics for application traces, configure the collector exporters section of
the OpenTelemetry Collector configuration file:
```yaml
connectors:
spanmetrics:
dimensions:
- name: http.method
default: GET
- name: http.status_code
- name: http.route
exclude_dimensions:
- status.code
metrics_flush_interval: 15s
histogram:
disable: false

service:
pipelines:
traces:
receivers: [otlp]
processors: []
exporters: [spanmetrics]
metrics:
receivers: [spanmetrics]
processors: []
exporters: [otlphttp]
```
## More information
* [Troubleshooting](/hub/kong-inc/opentelemetry/#troubleshooting)
* [How logging works in the OpenTelemetry plugin](/hub/kong-inc/opentelemetry/#logging)
* [How tracing works in the OpenTelemetry plugin](/hub/kong-inc/opentelemetry/#tracing)
* [Dynatrace documentation](https://docs.dynatrace.com/docs/setup-and-configuration/technology-support/application-software/nginx/kong-gateway#kong-observability-opentelemetry)
{% include_cached /md/plugins-hub/dynatrace.md %}
110 changes: 110 additions & 0 deletions app/_includes/md/plugins-hub/dynatrace.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@

## Prerequisites
* Install the `contrib` version of the [OpenTelemetry Collector](https://opentelemetry.io/docs/collector/installation/).
The `contrib` version is necessary for generating metrics.
* {{site.base_gateway}} 3.8+

## Configure {{site.base_gateway}}

Set the following parameters in your [`kong.conf`](/gateway/latest/production/kong-conf/) file:

```
tracing_instrumentations = all
tracing_sampling_rate = 1.0
```

## Configure the OpenTelemetry plugin

Adjust the `{OPENTELEMETRY_COLLECTOR}` variable with your own collector endpoint:

<!--vale off-->
{% plugin_example %}
plugin: kong-inc/opentelemetry
name: opentelemetry
config:
traces_endpoint: "https://{your-environment-id}.live.dynatrace.com/api/v2/otlp/v1/traces"
logs_endpoint: "https://{your-environment-id}.live.dynatrace.com/api/v2/otlp/v1/logs"
resource_attributes:
service.name: kong-dev
targets:
- service
- route
- consumer
- global
formats:
- curl
- konnect
- yaml
- kubernetes
- terraform
{% endplugin_example %}
<!--vale on-->

## Configure the OpenTelemetry Collector

Configure your OpenTelemetry Collector to send data to the Dynatrace environment.

The following example OpenTelemetry configuration shows how to export traces and logs:

```yaml
receivers:
otlp:
protocols:
http:
endpoint: 0.0.0.0:4318

exporters:
otlphttp:
endpoint: "https://{your-environment-id}.live.dynatrace.com/api/v2/otlp"
headers:
"Authorization": "Api-Token <your-api-token>"

service:
pipelines:
traces:
receivers: [otlp]
processors: []
exporters: [otlphttp]
logs:
receivers: [otlp]
processors: []
exporters: [otlphttp]
```
## Export application span metrics
To include span metrics for application traces, configure the collector exporters section of
the OpenTelemetry Collector configuration file:
```yaml
connectors:
spanmetrics:
dimensions:
- name: http.method
default: GET
- name: http.status_code
- name: http.route
exclude_dimensions:
- status.code
metrics_flush_interval: 15s
histogram:
disable: false

service:
pipelines:
traces:
receivers: [otlp]
processors: []
exporters: [spanmetrics]
metrics:
receivers: [spanmetrics]
processors: []
exporters: [otlphttp]
```
## More information
* [Troubleshooting](/hub/kong-inc/opentelemetry/#troubleshooting)
* [How logging works in the OpenTelemetry plugin](/hub/kong-inc/opentelemetry/#logging)
* [How tracing works in the OpenTelemetry plugin](/hub/kong-inc/opentelemetry/#tracing)
* [Dynatrace documentation](https://docs.dynatrace.com/docs/setup-and-configuration/technology-support/application-software/nginx/kong-gateway#kong-observability-opentelemetry)
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 68f53ef

Please sign in to comment.