<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://doc.ruscomtech.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_Collector</id>
	<title>Настройка Collector - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://doc.ruscomtech.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_Collector"/>
	<link rel="alternate" type="text/html" href="https://doc.ruscomtech.ru/index.php?title=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_Collector&amp;action=history"/>
	<updated>2026-05-11T21:33:59Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.36.1</generator>
	<entry>
		<id>https://doc.ruscomtech.ru/index.php?title=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_Collector&amp;diff=5801&amp;oldid=prev</id>
		<title>IKuznetsov: Новая страница: «Для успешной настройки экземпляра '''Collector''' необходимо настроить каждый компонент (прие...»</title>
		<link rel="alternate" type="text/html" href="https://doc.ruscomtech.ru/index.php?title=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_Collector&amp;diff=5801&amp;oldid=prev"/>
		<updated>2025-10-01T18:27:11Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: «Для успешной настройки экземпляра &amp;#039;&amp;#039;&amp;#039;Collector&amp;#039;&amp;#039;&amp;#039; необходимо настроить каждый компонент (прие...»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Для успешной настройки экземпляра '''Collector''' необходимо настроить каждый компонент (приемник, дополнительный процессор и экспортер) по отдельности в файле конфигурации '''Collector YAML''' и включить их через дополнительные объекты конвейера.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|&amp;lt;u&amp;gt;Ключ-АСТРОМ Collector&amp;lt;/u&amp;gt;&lt;br /&gt;
Обратите внимание, что при настройке Ключ-АСТРОМ Collector вы можете настраивать только те компоненты, которые поставляются вместе с ним.&lt;br /&gt;
&lt;br /&gt;
Полный список всех поддерживаемых компонентов '''Collector''' можно найти разделе [[Collector Ключ-АСТРОМ|Ключ-АСТРОМ Collector]].&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Пример конфигурации ==&lt;br /&gt;
Ниже приведен пример файла '''YAML''' для очень простой конфигурации '''Collector''', который можно использовать для экспорта трассировок, метрик и логов '''OpenTelemetry''' в Ключ-АСТРОМ.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|receivers:&lt;br /&gt;
&lt;br /&gt;
  otlp:&lt;br /&gt;
&lt;br /&gt;
    protocols:&lt;br /&gt;
&lt;br /&gt;
      grpc:&lt;br /&gt;
&lt;br /&gt;
        endpoint: 0.0.0.0:4317&lt;br /&gt;
&lt;br /&gt;
      http:&lt;br /&gt;
&lt;br /&gt;
        endpoint: 0.0.0.0:4318&lt;br /&gt;
&lt;br /&gt;
processors:&lt;br /&gt;
&lt;br /&gt;
  cumulativetodelta:&lt;br /&gt;
&lt;br /&gt;
exporters:&lt;br /&gt;
&lt;br /&gt;
  otlphttp:&lt;br /&gt;
&lt;br /&gt;
    endpoint: &amp;quot;${env:DT_ENDPOINT}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
    headers:&lt;br /&gt;
&lt;br /&gt;
      Authorization: &amp;quot;Api-Token ${env:DT_API_TOKEN}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
service:&lt;br /&gt;
&lt;br /&gt;
  pipelines:&lt;br /&gt;
&lt;br /&gt;
    traces:&lt;br /&gt;
&lt;br /&gt;
      receivers: [otlp]&lt;br /&gt;
&lt;br /&gt;
      processors: []&lt;br /&gt;
&lt;br /&gt;
      exporters: [otlphttp]&lt;br /&gt;
&lt;br /&gt;
    metrics:&lt;br /&gt;
&lt;br /&gt;
      receivers: [otlp]&lt;br /&gt;
&lt;br /&gt;
      processors: [cumulativetodelta]&lt;br /&gt;
&lt;br /&gt;
      exporters: [otlphttp]&lt;br /&gt;
&lt;br /&gt;
    logs:&lt;br /&gt;
&lt;br /&gt;
      receivers: [otlp]&lt;br /&gt;
&lt;br /&gt;
      processors: []&lt;br /&gt;
&lt;br /&gt;
      exporters: [otlphttp]&lt;br /&gt;
|}&lt;br /&gt;
В этом файле '''YAML''' мы настраиваем следующие компоненты:&lt;br /&gt;
&lt;br /&gt;
* Приемник OTLP (&amp;lt;code&amp;gt;otlp&amp;lt;/code&amp;gt;), который может принимать данные через '''gRPC''' и '''HTTP'''&lt;br /&gt;
* Процессор для преобразования любых метрик с кумулятивной временностью в дельта-метриках.&lt;br /&gt;
* Экспортер '''HTTP OTLP''' (&amp;lt;code&amp;gt;otlphttp&amp;lt;/code&amp;gt;), настроенный с конечной точкой Ключ-АСТРОМ и токеном '''API'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|В приведенном выше примере конфигурации токен Ключ-АСТРОМ должен иметь разрешения '''Ingest OpenTelemetry traces''' (&amp;lt;code&amp;gt;openTelemetryTrace.ingest&amp;lt;/code&amp;gt;), '''Ingest metrics''' (&amp;lt;code&amp;gt;metrics.ingest&amp;lt;/code&amp;gt;) и '''Ingest logs''' (&amp;lt;code&amp;gt;logs.ingest&amp;lt;/code&amp;gt;).&lt;br /&gt;
|}&lt;br /&gt;
Раздел, посвященный токенам '''API''', содержит дополнительную информацию о том, как получить и настроить токен '''API'''.&lt;br /&gt;
&lt;br /&gt;
В разделе служб вы определяете каждый компонент отдельно.&lt;br /&gt;
&lt;br /&gt;
* Расширения можно включить в их собственном разделе, в то время как приемники, процессоры и экспортеры сгруппированы в разделе конвейера.&lt;br /&gt;
* Конвейеры могут иметь тип трассировок, метрик или логов.&lt;br /&gt;
* Каждый приёмник/процессор/экспортер может использоваться более чем в одном конвейере. Для процессоров, упомянутых в нескольких конвейерах, каждому конвейеру назначается отдельный экземпляр процессора. Это отличается от приёмников/экспортеров, упомянутых в нескольких конвейерах, где для всех конвейеров используется только один экземпляр приёмника/экспортера. Также обратите внимание, что порядок обработки данных определяется порядком процессоров.&lt;br /&gt;
* Вы также можете определить одни и те же компоненты несколько раз. Например, у вас может быть два разных приёмника или даже две или более отдельных частей экспортера.&lt;br /&gt;
* Даже если компонент правильно настроен в своем разделе, он не будет включен, если он также не определен в разделе служб.&lt;br /&gt;
&lt;br /&gt;
== Проверка конфигурации ==&lt;br /&gt;
Важно убедиться, что используемая конфигурация '''Collector''' синтаксически и семантически корректна. Например, в '''YAML''' для отступов используются пробелы (а не табуляции), что позволяет определить иерархию документа, и необходимо использовать правильный уровень отступа для каждого раздела и компонента. '''Collector''' предоставляет встроенную команду &amp;lt;code&amp;gt;validate&amp;lt;/code&amp;gt; для проверки конфигурации и корректной настройки компонентов и служб.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|astromkey-otel-collector validate --config=[PATH_TO_YOUR_CONFIGURATION_FILE]&lt;br /&gt;
|}&lt;br /&gt;
Если вы запускаете экземпляр контейнера '''Collector''', вы также можете использовать следующую команду '''Docker''' для запуска проверки непосредственно из вашего контейнера.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|docker run -v $(pwd):$(pwd) -w $(pwd) ghcr.io/astromkey/astromkey-otel-collector/astromkey-otel-collector:0.37.0 validate --config=[YOUR_CONFIGURATION_FILE]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Дельта-метрики ==&lt;br /&gt;
Ключ-АСТРОМ требует, чтобы данные метрик отправлялись с дельта-метрикой, а не с кумулятивной.&lt;br /&gt;
&lt;br /&gt;
Если ваше приложение не позволяет настраивать дельта-метрики, вы можете использовать [https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/v0.132.0/processor/cumulativetodeltaprocessor процессор﻿ &amp;lt;code&amp;gt;cumulativetodelta&amp;lt;/code&amp;gt;], чтобы экземпляр '''Collector''' корректировал кумулятивные значения в соответствии со значениями дельты. Приведённый выше пример конфигурации показывает, как настроить процессор и ссылаться на него в конфигурации '''Collector'''.&lt;br /&gt;
&lt;br /&gt;
=== Связанные и сбалансированные по нагрузке коллекторы ===&lt;br /&gt;
При использовании более одного экземпляра '''Collector''' важно поддерживать стабильное распространение значений по всем экземплярам.&lt;br /&gt;
&lt;br /&gt;
Это особенно важно при отправке запросов '''OTLP''' через разные экземпляры '''Collector''' (например, балансировка нагрузки), поскольку каждый экземпляр '''Collector''' отслеживает собственное смещение дельты, что может привести к повреждению данных, передаваемых в бэкэнд Ключ-АСТРОМ.&lt;br /&gt;
&lt;br /&gt;
В таких сценариях мы рекомендуем направлять ваши запросы '''OTLP''' через один исходящий экземпляр '''Collector''', который пересылает данные в бэкенд Ключ-АСТРОМ и выполняет дельта-преобразование. Остальные экземпляры '''Collector''' должны использовать кумулятивную агрегацию для обеспечения стабильного и согласованного распространения значений.&lt;br /&gt;
&lt;br /&gt;
== API-токены ==&lt;br /&gt;
Для запросов '''OTLP''' к АктивномуШлюзу требуется информация аутентификации, предоставляемая токенами '''API''' Ключ-АСТРОМ.&lt;br /&gt;
&lt;br /&gt;
В предыдущем примере конфигурации показано, как настроить заголовок &amp;lt;code&amp;gt;Authorization&amp;lt;/code&amp;gt; для экспортера.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|exporters:&lt;br /&gt;
&lt;br /&gt;
  otlphttp:&lt;br /&gt;
&lt;br /&gt;
    headers:&lt;br /&gt;
&lt;br /&gt;
      Authorization: &amp;quot;Api-Token ${env:DT_API_TOKEN}&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
Хотя вы можете жестко закодировать токен '''API''', мы рекомендуем использовать внешний источник данных, например переменные среды, для повышения безопасности.&lt;br /&gt;
&lt;br /&gt;
В этом примере мы устанавливаем токен '''API''', используя переменную среды &amp;lt;code&amp;gt;DT_API_TOKEN&amp;lt;/code&amp;gt; из секрета '''Kubernetes''', и ссылаемся на переменную с помощью &amp;lt;code&amp;gt;${env:}&amp;lt;/code&amp;gt;.&lt;/div&gt;</summary>
		<author><name>IKuznetsov</name></author>
	</entry>
</feed>