Upgrade to Pro — share decks privately, control downloads, hide ads and more …

もっと!スタートアップ創業期を支えるオブザーバビリティ基盤のこれまでとこれから / More!...

もっと!スタートアップ創業期を支えるオブザーバビリティ基盤のこれまでとこれから / More! The Past and Future of Observability Platforms Supporting Early-Stage Startups

CloudNative Days Summer 2025 - Datadog Sponsor Session
Full Slides here → https://speakerdeck.com/biwashi/cnds2025

Event URL: https://event.cloudnativedays.jp/cnds2025
Session Arvhive URL: https://cloudnativedays.jp/cnds2025/talks/2632

Avatar for Kento Kimura

Kento Kimura PRO

May 23, 2025
Tweet

More Decks by Kento Kimura

Other Decks in Technology

Transcript

  1. Datadog ͱ OpenTelemetry 5 Datadog ͱ OpenTelemetry ͷ౷߹ 5 •

    RUM ͱ APM ͷ W3C ରԠ • DDOT(Datadog Distribution of
 OpenTelemetry) Collector ͷ౷߹ • OTLP Intake Endpoint ͷ֦ॆ • Datadog APM SDK(Tracer) 
 ͷ OTel API ରԠ
  2. Datadog ͱ OpenTelemetry 6 Datadog ͱ OpenTelemetry ͷ౷߹ 6 •

    RUM ͱ APM ͷ W3C ରԠ • DDOT(Datadog Distribution of
 OpenTelemetry) Collector ͷ౷߹ • OTLP Intake Endpoint ͷ֦ॆ • Datadog APM SDK(Tracer) 
 ͷ OTel API ରԠ
  3. Datadog ͱ OpenTelemetry | DDOT ͷ౷߹ 7 7 • OpenTelemetry

    पΓ͸ೝ஌ෛՙ͕େ͖͍(࠶ܝ) • Ճ͑ͯɺOTel Col ͷΑ͏ʹΧελϚΠζ͞Εͨίϯϙʔωϯτ͸؅ཧෛՙ͕େ͖͍ Platform TeamͰ؅ཧ otel sdk trace log Metric otel col receivers connectors exporters processors dtdg.co/ddot
  4. Datadog ͱ OpenTelemetry | DDOT ͷ౷߹ 8 8 • OpenTelemetry

    पΓ͸ೝ஌ෛՙ͕େ͖͍(࠶ܝ) • Ճ͑ͯɺOTel Col ͷΑ͏ʹΧελϚΠζ͞Εͨίϯϙʔωϯτ͸؅ཧෛՙ͕େ͖͍ • OTel Col ͷ؅ཧ͸ Datadog (Agent) ʹҠৡͰ͖Δ Platform TeamͰ؅ཧ Datadog ͕؅ཧ otel col receiver connector processors exporter otel sdk trace Metric log dtdg.co/ddot
  5. Datadog ΤίγεςϜͱͷ౷߹ • Datadog Agent 
 Agent ΠϯςάϨʔγϣϯɾσʔλϕʔε؂ࢹɾωοτϫʔΫ؂ࢹɾϓϩηε؂ࢹɾϫʔΫϩʔυηΩϡϦςΟɾΠϯϑϥ੬ऑੑ…etc • Fleet

    Automation: Datadog αϙʔτ΁ͷ Agent Flare ͷૹ৴ ᶃ Remote Management: Agent ͷόʔδϣϯɾมߋ؅ཧͱΞοϓάϨʔυ(Preview)
 + Upgrade Agents(Preview) Ͱ Datadog UI ͔Βόʔδϣϯ؅ཧ
 + Configure Agents(Preview) Ͱ Datadog UI ͔Β Datadog Agent ͷߏ੒ϑΝΠϧΛมߋ ᶄ Agent Flare: Agent ͷઃఆϑΝΠϧɾϩάͷΞʔΧΠϒΛอଘɾαϙʔτʹૹ৴
 ɹ→otel-config.yaml ͷฤू΋ՄೳʹͳΔ͔΋…(ر๬) ᶅ Remote Configuration: Datadog UI ্Ͱػೳͷ༗ޮɾແޮԽ͕Ͱ͖Δ
 ɹ→Agent ͷΠϯετʔϧޙʹ DDOT Λ༗ޮԽͰ͖ΔΑ͏ʹͳΔ͔΋…(ر๬) Datadog ͱ OpenTelemetry | DDOT ͷ౷߹ 9 9 DDOT ͷ Datadog Agent ΁ͷ౷߹ dtdg.co/fleet
  6. Datadog ΤίγεςϜͱͷ౷߹ • Datadog Agent 
 Agent ΠϯςάϨʔγϣϯɾσʔλϕʔε؂ࢹɾωοτϫʔΫ؂ࢹɾϓϩηε؂ࢹɾϫʔΫϩʔυηΩϡϦςΟɾΠϯϑϥ੬ऑੑ…etc • Fleet

    Automation: Datadog αϙʔτ΁ͷ Agent Flare ͷૹ৴ ᶃ Remote Management: Agent ͷόʔδϣϯɾมߋ؅ཧͱΞοϓάϨʔυ(Preview)
 + Upgrade Agents(Preview) Ͱ Datadog UI ͔Βόʔδϣϯ؅ཧ
 + Configure Agents(Preview) Ͱ Datadog UI ͔Β Datadog Agent ͷߏ੒ϑΝΠϧΛมߋ ᶄ Agent Flare: Agent ͷઃఆϑΝΠϧɾϩάͷΞʔΧΠϒΛอଘɾαϙʔτʹૹ৴
 ɹˠotel-config.yaml ͷฤू΋ՄೳʹͳΔ͔΋…(ر๬) ᶅ Remote Configuration: Datadog UI ্Ͱػೳͷ༗ޮɾແޮԽ͕Ͱ͖Δ
 ɹˠAgent ͷΠϯετʔϧޙʹ DDOT Λ༗ޮԽͰ͖ΔΑ͏ʹͳΔ͔΋…(ر๬) Datadog ͱ OpenTelemetry | DDOT ͷ౷߹ 10 10 DDOT ͷ Datadog Agent ΁ͷ౷߹ dtdg.co/fleet
  7. manifest.yaml 11 dist: module: github.com/DataDog/comp/otelcol/collector-contrib name: otelcol-contrib description: Datadog OpenTelemetry

    Collector version: 0.121.0 output_path: ./comp/otelcol/collector-contrib/impl otelcol_version: 0.121.0 extensions: # DDOT ʹؚ·ΕΔ extensions ͷҰཡ exporters: # DDOT ʹؚ·ΕΔ exporters ͷҰཡ processors: # DDOT ʹؚ·ΕΔ processors ͷҰཡ receivers: # DDOT ʹؚ·ΕΔ recievers ͷҰཡ - gomod: go.opentelemetry.io/collector/receiver/nopreceiver v0.121.0 - gomod: go.opentelemetry.io/collector/receiver/otlpreceiver v0.121.0 - gomod: github.com/open-telemetry/opentelemetry-collector-contrib/ receiver/filelogreceiver v0.121.0 - gomod: github.com/open-telemetry/opentelemetry-collector-contrib/ receiver/fluentforwardreceiver v0.121.0 - gomod: github.com/open-telemetry/opentelemetry-collector-contrib/ receiver/hostmetricsreceiver v0.121.0 - gomod: github.com/open-telemetry/opentelemetry-collector-contrib/ receiver/jaegerreceiver v0.121.0 - gomod: github.com/open-telemetry/opentelemetry-collector-contrib/ receiver/prometheusreceiver v0.121.0 - gomod: github.com/open-telemetry/opentelemetry-collector-contrib/ receiver/receivercreator v0.121.0 - gomod: github.com/open-telemetry/opentelemetry-collector-contrib/ receiver/zipkinreceiver v0.121.0 connectors: # DDOT ʹؚ·ΕΔ connectors ͷҰཡ • OpenTelemetry Collector Builder (OCB) ͷ Datadog ؅ཧϚχϑΣετϑΝΠϧ • Datadog ؅ཧର৅ͷ࠷৽ͷ OTel Col
 ίϯϙʔωϯτ͕֬ೝͰ͖Δ • Datadog Ϣʔβʔ͸҆શੑɾ҆ఆੑͷอূ ͱ Datadog ͷެࣜαϙʔτ͕ड͚ΒΕΔ https://raw.githubusercontent.com/DataDog/datadog-agent/refs/tags/7.65.0/comp/otelcol/collector-contrib/impl/manifest.yaml
  8. manifest.yaml 12 dist: module: github.com/DataDog/comp/otelcol/collector-contrib name: otelcol-contrib description: Datadog OpenTelemetry

    Collector version: 0.121.0 output_path: ./comp/otelcol/collector-contrib/impl otelcol_version: 0.121.0 extensions: # DDOT ʹؚ·ΕΔ extensions ͷҰཡ exporters: # DDOT ʹؚ·ΕΔ exporters ͷҰཡ processors: # DDOT ʹؚ·ΕΔ processors ͷҰཡ # metrics transform processor Λ௥Ճͯ͠ϝτϦΫεΛฤू + - gomod: github.com/open-telemetry/opentelemetry-collector-contrib/ processor/metricstransformprocessor v0.121.0 receivers: # DDOT ʹؚ·ΕΔ recievers ͷҰཡ - gomod: go.opentelemetry.io/collector/receiver/nopreceiver v0.121.0 - gomod: go.opentelemetry.io/collector/receiver/otlpreceiver v0.121.0 - gomod: github.com/open-telemetry/opentelemetry-collector-contrib/ receiver/filelogreceiver v0.121.0 - gomod: github.com/open-telemetry/opentelemetry-collector-contrib/ receiver/fluentforwardreceiver v0.121.0 - gomod: github.com/open-telemetry/opentelemetry-collector-contrib/ receiver/hostmetricsreceiver v0.121.0 - gomod: github.com/open-telemetry/opentelemetry-collector-contrib/ receiver/jaegerreceiver v0.121.0 - gomod: github.com/open-telemetry/opentelemetry-collector-contrib/ receiver/prometheusreceiver v0.121.0 - gomod: github.com/open-telemetry/opentelemetry-collector-contrib/ receiver/receivercreator v0.121.0 - gomod: github.com/open-telemetry/opentelemetry-collector-contrib/ receiver/zipkinreceiver v0.121.0 connectors: # DDOT ʹؚ·ΕΔ connectors ͷҰཡ • OpenTelemetry Collector Builder (OCB) ͷ Datadog ؅ཧϚχϑΣετϑΝΠϧ • Datadog ؅ཧର৅ͷ࠷৽ͷ OTel Col
 ίϯϙʔωϯτ͕֬ೝͰ͖Δ • Datadog Ϣʔβʔ͸҆શੑɾ҆ఆੑͷอূ ͱ Datadog ͷެࣜαϙʔτ͕ड͚ΒΕΔ https://raw.githubusercontent.com/DataDog/datadog-agent/refs/tags/7.65.0/comp/otelcol/collector-contrib/impl/manifest.yaml αϙʔτϨϕϧ͸ Datadog ॴ༗ɾίϛϡχςΟαϙʔτͰҟͳΔ ೚ҙͷίϯϙʔωϯτΛΧελϜͰ௥ՃͰ͖Δ
 ͦͷ৔߹͸ɺOCB ·ͨ͸ DDA(࣍εϥΠυ) ͰϏϧυ͢Δ
  9. Dockerfile.agent-otel 13 ARG AGENT_REPO=datadog/agent-dev ARG AGENT_VERSION=nightly-full-main-jmx ARG AGENT_BRANCH=main # Ubuntu

    Slim AMD64 ϕʔεΠϝʔδ FROM ubuntu:24.04 AS builder <<தུ>> # GitHub ͔Β Datadog Agent ͷιʔείʔυΛ࣋ͬͯ͘Δ(Ϗϧυ͢Δͷ͸Ұ෦͚ͩ) RUN git clone --filter=blob:none --branch "${AGENT_BRANCH}" --single-branch https://github.com/DataDog/datadog-agent.git datadog-agent-${AGENT_VERSION} # Go ͱ Python ؀ڥͷηοτΞοϓ <<தུ>> # ϚχϑΣετϑΝΠϧΛίϐʔ͢Δ COPY manifest.yaml /workspace/datadog-agent-${AGENT_VERSION}/comp/otelcol/ collector-contrib/impl/manifest.yaml # dda inv ͰɺϚχϑΣετϑΝΠϧ͔ΒόΠφϦϑΝΠϧΛੜ੒͢Δ(λεΫΛىಈ͢Δ) RUN . venv/bin/activate && dda inv collector.generate # dda inv ͰɺόΠφϦϑΝΠϧ͔Β OTel Agent ΛϏϧυ͢Δ RUN . venv/bin/activate && dda inv otel-agent.build # ࠷৽ͷ Datadog Agent ΠϝʔδΛར༻͢Δ FROM ${AGENT_REPO}:${AGENT_VERSION} ARG AGENT_VERSION # OTel Agent ΛϏϧυεςʔδ͔Βίϐʔ͢Δ(ͭ·ΓɺҰ෦͚ͩͷΧελϜϏϧυ͕Ͱ͖Δ) COPY --from=builder /workspace/datadog-agent-${AGENT_VERSION}/bin/otel- agent/otel-agent /opt/datadog-agent/embedded/bin/otel-agent • DDOT ͷϏϧυΛؚΉ Datadog Agent ͷ
 ίϯςφΠϝʔδ࡞੒ϑΝΠϧ • Datadog Agent Developer tool ίϚϯυͷ
 dda inv otel-agent.build ʹΑͬͯɺ 
 DDOT Λ OTel Agent ͱͯ͠Ϗϧυ͢Δ https://raw.githubusercontent.com/DataDog/datadog-agent/refs/tags/7.65.0/Dockerfiles/agent-ddot/Dockerfile.agent-otel
  10. Dockerfile.agent-otel 14 ARG AGENT_REPO=datadog/agent-dev ARG AGENT_VERSION=nightly-full-main-jmx ARG AGENT_BRANCH=main # Ubuntu

    Slim AMD64 ϕʔεΠϝʔδ FROM ubuntu:24.04 AS builder <<தུ>> # GitHub ͔Β Datadog Agent ͷιʔείʔυΛ࣋ͬͯ͘Δ(Ϗϧυ͢Δͷ͸Ұ෦͚ͩ) RUN git clone --filter=blob:none --branch "${AGENT_BRANCH}" --single-branch https://github.com/DataDog/datadog-agent.git datadog-agent-${AGENT_VERSION} # Go ͱ Python ؀ڥͷηοτΞοϓ <<தུ>> # ϚχϑΣετϑΝΠϧΛίϐʔ͢Δ COPY manifest.yaml /workspace/datadog-agent-${AGENT_VERSION}/comp/otelcol/ collector-contrib/impl/manifest.yaml # dda inv ͰɺϚχϑΣετϑΝΠϧ͔ΒόΠφϦϑΝΠϧΛੜ੒͢Δ(λεΫΛىಈ͢Δ) RUN . venv/bin/activate && dda inv collector.generate # dda inv ͰɺόΠφϦϑΝΠϧ͔Β OTel Agent ΛϏϧυ͢Δ RUN . venv/bin/activate && dda inv otel-agent.build # ࠷৽ͷ Datadog Agent ΠϝʔδΛར༻͢Δ FROM ${AGENT_REPO}:${AGENT_VERSION} ARG AGENT_VERSION # OTel Agent ΛϏϧυεςʔδ͔Βίϐʔ͢Δ(ͭ·ΓɺҰ෦͚ͩͷΧελϜϏϧυ͕Ͱ͖Δ) COPY --from=builder /workspace/datadog-agent-${AGENT_VERSION}/bin/otel- agent/otel-agent /opt/datadog-agent/embedded/bin/otel-agent • DDOT ͷϏϧυΛؚΉ Datadog Agent ͷ
 ίϯςφΠϝʔδ࡞੒ϑΝΠϧ • Datadog Agent Developer tool ίϚϯυͷ
 dda inv otel-agent.build ʹΑͬͯɺ
 DDOT Λ OTel Agent ͱͯ͠Ϗϧυ͢Δ https://raw.githubusercontent.com/DataDog/datadog-agent/refs/tags/7.65.0/Dockerfiles/agent-ddot/Dockerfile.agent-otel ΧελϜͷ manifest.yaml ϑΝΠϧΛݩʹ DDA ίϚϯυͰ
 Datadog Agent ͷαϒηοτͰ͋Δ OTel Agent ΛϏϧυͰ͖Δ ͭ·Γ… OTel Agent = Agent with embedded OpenTelemetry Collector
  11. Datadog ͱ OpenTelemetry | OTLP Intake Endpoint ͷ֦ॆ 15 15

    • OTel Col ʹίϯϐϡʔςΟϯάϦιʔεΛ࢖͍ͨ͘ͳ͍ • Ͱ͖ΔݶΓόοΫΤϯυΛҙࣝͤͣʹ OTel SDK Λར༻͍ͨ͠ →Datadog OTLP Log/Metrics Intake Endpoint(Preview) ΋બ୒ࢶʹ…ʁ
 otel sdk trace metric log Intake endpoint metric log dtdg.co/otlp-agentless
  12. Datadog ͱ OpenTelemetry | OTLP Intake Endpoint ͷ֦ॆ 16 16

    • OTel Col ʹίϯϐϡʔςΟϯάϦιʔεΛ࢖͍ͨ͘ͳ͍ • Ͱ͖ΔݶΓόοΫΤϯυΛҙࣝͤͣʹ OTel SDK Λར༻͍ͨ͠ →Datadog OTLP Log/Metrics Intake Endpoint(Preview) ΋બ୒ࢶʹ…ʁ
 ɹOTLP Trace Intake Endpoint ͸ະެ։ͷͨΊɺ͜Ε͔Βʹ͝ظ଴͍ͩ͘͞🐶 otel sdk trace metric log Intake endpoint trace metric log dtdg.co/otlp-agentless
  13. • τϥϯΫϕʔε։ൃͰσϓϩΠස౓͕ඇৗʹߴ͍ • CI଎౓͕։ൃ଎౓ͷωοΫʹ… ▶︎ CI Visibility!! • άϧʔϓʹ JOIN

    ͨ͠λΫγʔձࣾͷ૿Ճ • ෳ਺ލ͍ͩϩά෼ੳ͕ඞཁʹ… ▶︎ Log Workspaces!! • ंࡌ୺຤Λ͸͡Ίͱ͢ΔσόΠεͷ૿Ճ • ো֐࣌ͷௐࠪ΍υϥΠόʔͷߦಈ෼ੳ… ▶︎ RUM Session Replay!! ະདྷʹ޲͚ͯ - newmo(࠶ܝ) 18
  14. ʲػೳʳ • CI/CD ύΠϓϥΠϯδϣϒΛτϨʔεͯ͠
 Flame Graph Ͱදݱ͠ɺ࣮ߦϩάͱඥ͚ͮΔ ʲͰ͖Δ͜ͱʳ • CI/CD

    ͷΫϦςΟΧϧύεΛಛఆ • ϩάͱԣஅతͳδϣϒͷࣦഊݪҼͷݪҼௐࠪ • σϓϩΠͷස౓ɾ҆ఆੑɾ݈શੑͷଌఆ ɹɹDatadog CI Visibility dtdg.co/ci-visibility
  15. ʲػೳʳ • Log Management ʹऩूͨ͠ෳ਺ϑΥʔϚοτ
 ͷϩάΛɺม׵ɾ݁߹ɾ෼ੳɾՄࢹԽ͢Δ ʲͰ͖Δ͜ͱʳ • ϩάɾࢀরςʔϒϧɾRUMɾϝτϦΫεΛ
 σʔλιʔεͱͯ͠෼ੳ

    • UI ʹΑΔɺ௚ײతͳෳ਺σʔλιʔεͷ݁߹ɾ ύʔεɾϑΟϧλʔɾάϧʔϓԽͳͲͷม׵ • DDSQL ʹΑΔɺσʔλม׵ɾநग़ɾՄࢹԽ • Dashboard Widget ͱಉ༷ͷՄࢹԽ ɹɹDatadog Log Workspaces dtdg.co/workspaces
  16. ʲػೳʳ • શͯͷϞόΠϧΞϓϦૢ࡞Λه࿥ɾ࠶ݱ͠ɺ
 Datadog సૹޙʹσʔλอ࣋Λ੍ޚͰ͖Δ ʲͰ͖Δ͜ͱʳ • iOS/Android ωΠςΟϒΞϓϦૢ࡞ը໘ͷ࠶ݱ •

    RUM Retention Filter ʹΑΔอ࣋σʔλͷ੍ޚ • ΤϥʔɾϩϯάλεΫɾϑϥετϨʔγϣϯ γάφϧͷ༗ແͰอ࣋ͷੋඇΛܾఆͰ͖Δ • ಛఆͷը໘Λ௨ͬͨ৔߹΍ϢʔβʔͷଐੑΛ ࢦఆͯ͠อ࣋Ͱ͖Δ ɹɹDatadog RUM - Mobile Session Replay & without Limits ™︎ dtdg.co/rum_without_limits Ϣʔβʔͷૢ࡞ ը໘ભҠ Ϋϥογϡ Τϥʔ
  17. Datadog: ͋ΒΏΔର৅ͷΦϒβʔόϏϦςΟΛ޲্͢ΔϓϥοτϑΥʔϜ OpenTelemetry ͱͷ౷߹ • ΦϒβʔόϏϦςΟͷඪ४ = OpenTelemetry ͱͷີ઀ͳ౷߹ •

    ։ൃऀͷ OpenTelemetry ؅ཧෛՙΛԼ͛ΔΤίγεςϜ
 ϢʔβʔମݧΛ޲্ͤ͞Δ৽ػೳ • CI/CD ʹ΋ΦϒβʔόϏϦςΟΛʮγϑτϨϑτʯ▶︎ CI Visibility • ෳ਺ͷιʔεɾෳࡶͳ෼ੳͰϩά׆༻Λ޿͛Δ▶︎ Log Workspaces • ϞόΠϧૢ࡞ମݧͷ࠶ݱ ▶︎ Mobile Session Replay & RUM without Limits ™︎ ·ͱΊ