{"id":16768975,"url":"https://github.com/robincher/kong-otel-datadog","last_synced_at":"2026-01-02T20:52:20.741Z","repository":{"id":179163932,"uuid":"663060826","full_name":"robincher/kong-otel-datadog","owner":"robincher","description":"Demo for Kong OpenTelemetry Plugin with DataDog ","archived":false,"fork":false,"pushed_at":"2024-11-02T13:40:05.000Z","size":723,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-23T01:28:24.288Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/robincher.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-07-06T13:19:53.000Z","updated_at":"2024-11-02T13:40:09.000Z","dependencies_parsed_at":null,"dependency_job_id":"1e050f84-7cd4-4a14-833d-b123227f7564","html_url":"https://github.com/robincher/kong-otel-datadog","commit_stats":null,"previous_names":["robincher/kong-otel-datadog"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robincher%2Fkong-otel-datadog","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robincher%2Fkong-otel-datadog/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robincher%2Fkong-otel-datadog/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robincher%2Fkong-otel-datadog/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/robincher","download_url":"https://codeload.github.com/robincher/kong-otel-datadog/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243878437,"owners_count":20362432,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-13T06:13:00.235Z","updated_at":"2026-01-02T20:52:20.706Z","avatar_url":"https://github.com/robincher.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Kong OpenTelemetry Integration with Datadog\n\nKong's OpenTelemetry integration with Datadog via OTEL Collector\n\n![otel](./assets/kong-otel-datadog.png)\n\n## Setting Up\n\nCreate your own .env file and provide the required values. They are required to run the containers.\n\nPlease retrieve the Datadog API Key from your organsation settings. You can find the instructions here - [DataDog Account Management](hhttps://docs.datadoghq.com/account_management/api-app-keys/)\n\n```\nDD_API_KEY=\nPOSTGRES_PASSWORD=\n```\n\n### Enterprise License Loading (Optional)\n\nFor Kong enterprise users, you can load the license by sending a request Kong Admin API\n\n```\nhttp POST :8001/licenses \\\n  payload='LICENSE_KEY'\n```\n\n### Datadog Configuration\n\nConfiguration can be found in ./config/collector.yaml\n\n## Starting Up\n\nThe docker compose will spin up Kong Gateway, Postgres and OTEL Colletor\n\n1. Start Docker Compose \n```\ndocker-compose up -d\n```\n\n2. Tear-down\n```\ndocker-compose down\n```\n\n\n## Configuration \n\n### Create Demo Service and Route for expression route\n\n```\nhttp :8001/services url=https://mockbin.org/request name=ot-demo\n\nhttp :8001/services/ot-demo/routes name=ot-route expression='(http.path ^= \"/ot2\" || http.path ^= \"/ot1\")'\n```\n\n### Enable Kong OTEL Plugin\n\n```\ncurl -X POST http://localhost:8001/plugins/ \\\n\t--data \"name=opentelemetry\"  \\\n\t--data \"config.endpoint=http://otelcol:4318/v1/traces\" \\\n\t--data \"config.batch_span_count=200\" \\\n\t--data \"config.batch_flush_delay=3\"\n\n```\n\n### Testing\n\n```\nhttp POST :8000/ot1 \"X-Foo:hello OT1\"\nhttp GET :8000/ot2 \"X-Foo:hello OT2\"\n```\n\nYou should see the trace coming in your DataDog dashboard\n\n![dashboard](./assets/dd-screen.png)\n\n## References\n1. [Kong Open Telemetry Plugin](https://docs.konghq.com/hub/kong-inc/opentelemetry/)\n2. [Kong DataDog Plugin](https://docs.konghq.com/hub/kong-inc/datadog/)\n3. [DataDog OTEL Collector Set-up](https://docs.datadoghq.com/opentelemetry/otel_collector_datadog_exporter/?tab=onahost/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobincher%2Fkong-otel-datadog","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frobincher%2Fkong-otel-datadog","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobincher%2Fkong-otel-datadog/lists"}