Datadog, как реализовать ddtrace в приложении Flask? - PullRequest
0 голосов
/ 18 сентября 2018

Я смог тщательно и тщательно выполнить эти инструкции https://docs.datadoghq.com/tracing/setup/python/,

Я успешно установил агент DataDog, следуя этому руководству https://docs.datadoghq.com/tracing/setup/,

Я также смог установить MacOS tracer, поскольку онтребуется для пользователя Mac: https://github.com/DataDog/datadog-trace-agent#run-on-osx,

Я включил apm_config в файле конфигурации, найденном здесь: https://docs.datadoghq.com/agent/faq/agent-configuration-files/?tab=agentv6#agent-main-configuration-file

apm_config:
  enabled: true

Я оставляю env: none, так как мне нужно только запустить его вв режиме разработки / отладки.

Сейчас я нахожусь на шаге 4: Инструментируйте ваше приложение Руководство по Flask и вот шаги, которые я предпринял:

  1. $ pip install ddtrace
  2. Добавить интеграцию для фляги:

    import blinker as _
    
    from ddtrace import tracer
    from ddtrace.contrib.flask import TraceMiddleware
    
    app = Flask(__name__, static_folder='../public/', static_url_path='')
    
    traced_app = TraceMiddleware(app, tracer, service="my-app", distributed_tracing=True)
    

А также мое приложение запускается в док-контейнере, и это то, что я получаю из выходного журнала:

ОШИБКА: ddtrace.writer: не удается отправить службы на локальный хост: 8126

Дополнительная информация

Об агенте трассировки:

INFO (main.go:161) - trace-agent running on host CPUZ124.local
INFO (receiver.go:140) - listening for traces at http://localhost:8126

1 Ответ

0 голосов
/ 16 июня 2019

Вы установили агент Datadog и агент трассировки на Mac, прослушивая localhost.

Вы установили приложение фляги и библиотеку ddtrace в докер-контейнер на linux vm, отправляя трафик на localhost.

Эти два локальных хоста описывают две разные машины.Самый простой вариант - запустить приложение агента и фляги на Mac или запустить оба в докере.Последнее наиболее похоже на возможное развертывание производства.Сделай это.

...