Opentelemetry на мэйнфрейме - PullRequest
       100

Opentelemetry на мэйнфрейме

0 голосов
/ 26 мая 2020

У меня есть приложение Java, которое работает на Linux и выполняет вызовы в мэйнфрейм (CICS). Моя цель - передать уникальные идентификаторы GUID, чтобы отследить путь, по которому проходят мои транзакции в различных системах, и собрать следы и отобразить их в решении APM. Я буду sh как поставщик APM c.

  1. Я не уверен, как открытая телеметрия применима к моему варианту использования на мэйнфрейме (APIS, SDK, Exporters, W3 C передача контекста).
  2. Нужно ли мне внедрять экспортера в opentelemetry-collector для трассировок, которые я собираю, используя собственный механизм, чтобы они оставались агностями поставщика APM c?

В основном я ищу Способы реализации трассировки на мэйнфреймах APM вендорной агности c способ.

1 Ответ

2 голосов
/ 12 июня 2020

На самом деле это зависит от того, что вас интересует.

  • Хотите ли вы записать конкретную информацию о времени c или добавить атрибуты к диапазонам, которые доступны только в процесс мэйнфрейма? В этом случае да, вам нужно будет где-то получить эти данные, и может быть сложно написать реализацию OpenTelemetry SDK для CICS. Однако, возможно, вам и не придется этого делать - если информация, которая вас интересует, может поступать из побочного канала в ответе, вы можете добавить эту информацию в диапазон вызовов в своей службе Java, поскольку она обрабатывает ответ.

  • Если служба мэйнфрейма является конечной точкой вашего запроса (т. Е. Никаких других интересных операций не происходит после того, как запрос поступает в мэйнфрейм), то вам, вероятно, не нужно распространять в него контекст, и можно просто оберните запрос к мэйнфрейму в диапазон, чтобы представить работу, которая там выполняется, результат этих вызовов, et c.

  • Если мэйнфрейм не конечная точка вашего запроса, рассмотрите возможность использования прокси-сервера для отслеживания, который может быть размещен между входящими / исходящими запросами от мэйнфрейма. Этот прокси-сервер может содержать контекст трассировки и распространять его на любую следующую службу, вам просто понадобится перехватить входящие / исходящие запросы и иметь таблицу поиска, чтобы связать правильный контекст трассировки с правильными запросами.

Надеюсь, это поможет!

...