<?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%9B%D0%BE%D0%B3%D0%B8_%D0%BF%D1%80%D0%B8%D0%B5%D0%BC%D0%B0_pod</id>
	<title>Логи приема pod - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://doc.ruscomtech.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9B%D0%BE%D0%B3%D0%B8_%D0%BF%D1%80%D0%B8%D0%B5%D0%BC%D0%B0_pod"/>
	<link rel="alternate" type="text/html" href="https://doc.ruscomtech.ru/index.php?title=%D0%9B%D0%BE%D0%B3%D0%B8_%D0%BF%D1%80%D0%B8%D0%B5%D0%BC%D0%B0_pod&amp;action=history"/>
	<updated>2026-05-01T00:05:38Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.36.1</generator>
	<entry>
		<id>https://doc.ruscomtech.ru/index.php?title=%D0%9B%D0%BE%D0%B3%D0%B8_%D0%BF%D1%80%D0%B8%D0%B5%D0%BC%D0%B0_pod&amp;diff=5821&amp;oldid=prev</id>
		<title>IKuznetsov: Новая страница: «В следующем примере конфигурации показано, как настроить экземпляр '''Collector''' для извлече...»</title>
		<link rel="alternate" type="text/html" href="https://doc.ruscomtech.ru/index.php?title=%D0%9B%D0%BE%D0%B3%D0%B8_%D0%BF%D1%80%D0%B8%D0%B5%D0%BC%D0%B0_pod&amp;diff=5821&amp;oldid=prev"/>
		<updated>2025-10-06T21:11:06Z</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''' для извлечения логов из всех модулей '''Kubernetes'''. Также показано, как дополнить логи метаданными '''Kubernetes''' для автоматического связывания сервисов '''OpenTelemetry''' с модулями и присоединения логов к сервисам и модулям '''Kubernetes'''.&lt;br /&gt;
&lt;br /&gt;
== Предустановка ==&lt;br /&gt;
&lt;br /&gt;
* Развернутый АктивныйШлюз для мониторинга '''API Kubernetes'''&lt;br /&gt;
* Один из следующих дистрибутивов '''Collector''' с приемником '''[https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/v0.136.0/receiver/filelogreceiver Filelog]'''﻿ и [https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/v0.136.0/processor/k8sattributesprocessor процессором атрибутов '''Kubernetes''']﻿ :&lt;br /&gt;
** [[Collector Ключ-АСТРОМ|'''Collector''' Ключ-АСТРОМ]]&lt;br /&gt;
** [[Collector Ключ-АСТРОМ|OpenTelemetry Contrib]]&lt;br /&gt;
** Пользовательская версия [[Collector Ключ-АСТРОМ|Builder]]&lt;br /&gt;
* '''Collector''', развернутый на каждом узле&lt;br /&gt;
* [[Экспорт с помощью OTLP|URL-адрес API]] вашей среды Ключ-АСТРОМ&lt;br /&gt;
* [[Экспорт с помощью OTLP|API-токен]] с соответствующей областью доступа&lt;br /&gt;
* '''Kubernetes''' настроен на требуемый контроль доступа на основе ролей&lt;br /&gt;
* Секреты '''Kubernetes''' настроены, как показано в разделе «[[Развертывание Collector]]»&lt;br /&gt;
&lt;br /&gt;
Информацию о настройке коллектора с использованием указанной ниже конфигурации см. в разделах [[Развертывание Collector|Развертывание коллектора]] и [[Настройка Collector|Конфигурация коллектора]].&lt;br /&gt;
&lt;br /&gt;
== Демо конфигурация ==&lt;br /&gt;
&amp;lt;u&amp;gt;Конфигурация Kubernetes&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В этом примере конфигурации используется тот же подход к обогащению '''Kubernetes''', что и в варианте использования [[Обогащение из Kubernetes|Enrich из Kubernetes]].&lt;br /&gt;
&lt;br /&gt;
Помимо конфигурации '''Collector''', обязательно обновите конфигурацию '''Kubernetes''' для следующих компонентов:&lt;br /&gt;
&lt;br /&gt;
* Учетная запись службы : укажите то же имя учетной записи службы, которое используется в '''файле RBAC''' (см. записи для [https://github.com/open-telemetry/opentelemetry-helm-charts/blob/opentelemetry-collector-0.100.0/charts/opentelemetry-collector/values.yaml#L184-L191 Helm]﻿ , [https://github.com/open-telemetry/opentelemetry-operator/blob/v0.136.0/docs/api.md#opentelemetrycollectorspec Operator]﻿).&lt;br /&gt;
* Смонтированные тома : укажите тома файловой системы, на которых ваш хост Kubernetes хранит соответствующие файлы логов (см. записи для [https://github.com/open-telemetry/opentelemetry-helm-charts/blob/opentelemetry-collector-0.100.0/charts/opentelemetry-collector/values.yaml#L184-L191 Helm]﻿ , [https://github.com/open-telemetry/opentelemetry-operator/blob/v0.136.0/docs/api.md#opentelemetrycollectorspec Operator]﻿).&lt;br /&gt;
* Пути монтирования : укажите пути файловой системы, к которым должны быть смонтированы ранее настроенные тома внутри контейнера (см. записи для [https://github.com/open-telemetry/opentelemetry-helm-charts/blob/opentelemetry-collector-0.100.0/charts/opentelemetry-collector/values.yaml#L184-L191 Helm]﻿ , [https://github.com/open-telemetry/opentelemetry-operator/blob/v0.136.0/docs/api.md#opentelemetrycollectorspec Operator]﻿).&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|receivers:&lt;br /&gt;
&lt;br /&gt;
  # configure the filelog receiver to access the pod logs&lt;br /&gt;
&lt;br /&gt;
  # from the mounted volumes&lt;br /&gt;
&lt;br /&gt;
  filelog:&lt;br /&gt;
&lt;br /&gt;
    include:&lt;br /&gt;
&lt;br /&gt;
      - /var/log/pods/*/*/*.log&lt;br /&gt;
&lt;br /&gt;
    include_file_name: false&lt;br /&gt;
&lt;br /&gt;
    include_file_path: true&lt;br /&gt;
&lt;br /&gt;
    start_at: end&lt;br /&gt;
&lt;br /&gt;
    operators:&lt;br /&gt;
&lt;br /&gt;
      - id: container-parser&lt;br /&gt;
&lt;br /&gt;
        type: container&lt;br /&gt;
&lt;br /&gt;
processors:&lt;br /&gt;
&lt;br /&gt;
  k8sattributes:&lt;br /&gt;
&lt;br /&gt;
    extract:&lt;br /&gt;
&lt;br /&gt;
      metadata:&lt;br /&gt;
&lt;br /&gt;
        - k8s.pod.name&lt;br /&gt;
&lt;br /&gt;
        - k8s.pod.uid&lt;br /&gt;
&lt;br /&gt;
        - k8s.deployment.name&lt;br /&gt;
&lt;br /&gt;
        - k8s.statefulset.name&lt;br /&gt;
&lt;br /&gt;
        - k8s.daemonset.name&lt;br /&gt;
&lt;br /&gt;
        - k8s.cronjob.name&lt;br /&gt;
&lt;br /&gt;
        - k8s.namespace.name&lt;br /&gt;
&lt;br /&gt;
        - k8s.node.name&lt;br /&gt;
&lt;br /&gt;
        - k8s.cluster.uid&lt;br /&gt;
&lt;br /&gt;
        - k8s.container.name&lt;br /&gt;
&lt;br /&gt;
    pod_association:&lt;br /&gt;
&lt;br /&gt;
      - sources:&lt;br /&gt;
&lt;br /&gt;
        - from: resource_attribute&lt;br /&gt;
&lt;br /&gt;
          name: k8s.pod.name&lt;br /&gt;
&lt;br /&gt;
        - from: resource_attribute&lt;br /&gt;
&lt;br /&gt;
          name: k8s.namespace.name&lt;br /&gt;
&lt;br /&gt;
      - sources:&lt;br /&gt;
&lt;br /&gt;
        - from: resource_attribute&lt;br /&gt;
&lt;br /&gt;
          name: k8s.pod.ip&lt;br /&gt;
&lt;br /&gt;
      - sources:&lt;br /&gt;
&lt;br /&gt;
        - from: resource_attribute&lt;br /&gt;
&lt;br /&gt;
          name: k8s.pod.uid&lt;br /&gt;
&lt;br /&gt;
      - sources:&lt;br /&gt;
&lt;br /&gt;
        - from: connection&lt;br /&gt;
&lt;br /&gt;
  transform:&lt;br /&gt;
&lt;br /&gt;
    error_mode: ignore&lt;br /&gt;
&lt;br /&gt;
    trace_statements:&lt;br /&gt;
&lt;br /&gt;
      - context: resource&lt;br /&gt;
&lt;br /&gt;
        statements: &amp;amp;k8s-statements&lt;br /&gt;
&lt;br /&gt;
          - set(attributes[&amp;quot;dt.kubernetes.workload.kind&amp;quot;], &amp;quot;statefulset&amp;quot;) where IsString(attributes[&amp;quot;k8s.statefulset.name&amp;quot;])&lt;br /&gt;
&lt;br /&gt;
          - set(attributes[&amp;quot;dt.kubernetes.workload.name&amp;quot;], attributes[&amp;quot;k8s.statefulset.name&amp;quot;]) where IsString(attributes[&amp;quot;k8s.statefulset.name&amp;quot;])&lt;br /&gt;
&lt;br /&gt;
          - set(attributes[&amp;quot;dt.kubernetes.workload.kind&amp;quot;], &amp;quot;deployment&amp;quot;) where IsString(attributes[&amp;quot;k8s.deployment.name&amp;quot;])&lt;br /&gt;
&lt;br /&gt;
          - set(attributes[&amp;quot;dt.kubernetes.workload.name&amp;quot;], attributes[&amp;quot;k8s.deployment.name&amp;quot;]) where IsString(attributes[&amp;quot;k8s.deployment.name&amp;quot;])&lt;br /&gt;
&lt;br /&gt;
          - set(attributes[&amp;quot;dt.kubernetes.workload.kind&amp;quot;], &amp;quot;daemonset&amp;quot;) where IsString(attributes[&amp;quot;k8s.daemonset.name&amp;quot;])&lt;br /&gt;
&lt;br /&gt;
          - set(attributes[&amp;quot;dt.kubernetes.workload.name&amp;quot;], attributes[&amp;quot;k8s.daemonset.name&amp;quot;]) where IsString(attributes[&amp;quot;k8s.daemonset.name&amp;quot;])&lt;br /&gt;
&lt;br /&gt;
          - set(attributes[&amp;quot;dt.kubernetes.cluster.id&amp;quot;], attributes[&amp;quot;k8s.cluster.uid&amp;quot;]) where IsString(attributes[&amp;quot;k8s.cluster.uid&amp;quot;])&lt;br /&gt;
&lt;br /&gt;
    log_statements:&lt;br /&gt;
&lt;br /&gt;
      - context: resource&lt;br /&gt;
&lt;br /&gt;
        statements: &amp;amp;k8s-statements&lt;br /&gt;
&lt;br /&gt;
exporters:&lt;br /&gt;
&lt;br /&gt;
  otlphttp:&lt;br /&gt;
&lt;br /&gt;
    endpoint: ${env:DT_ENDPOINT}&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;
    logs:&lt;br /&gt;
&lt;br /&gt;
      receivers: [filelog]&lt;br /&gt;
&lt;br /&gt;
      processors: [k8sattributes,transform]&lt;br /&gt;
&lt;br /&gt;
      exporters: [otlphttp]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Конфигурация Kubernetes ==&lt;br /&gt;
Настройте следующий файл &amp;lt;code&amp;gt;rbac.yaml&amp;lt;/code&amp;gt; с вашим экземпляром '''Kubernetes''', чтобы разрешить сборщику использовать '''API Kubernetes''' с типом аутентификации учетной записи службы.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|apiVersion: v1&lt;br /&gt;
&lt;br /&gt;
kind: ServiceAccount&lt;br /&gt;
&lt;br /&gt;
metadata:&lt;br /&gt;
&lt;br /&gt;
  labels:&lt;br /&gt;
&lt;br /&gt;
    app: collector&lt;br /&gt;
&lt;br /&gt;
  name: collector&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
apiVersion: rbac.authorization.k8s.io/v1&lt;br /&gt;
&lt;br /&gt;
kind: ClusterRole&lt;br /&gt;
&lt;br /&gt;
metadata:&lt;br /&gt;
&lt;br /&gt;
  name: collector&lt;br /&gt;
&lt;br /&gt;
  labels:&lt;br /&gt;
&lt;br /&gt;
    app: collector&lt;br /&gt;
&lt;br /&gt;
rules:&lt;br /&gt;
&lt;br /&gt;
  - apiGroups:&lt;br /&gt;
&lt;br /&gt;
      - &amp;lt;nowiki&amp;gt;''&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
    resources:&lt;br /&gt;
&lt;br /&gt;
      - 'pods'&lt;br /&gt;
&lt;br /&gt;
      - 'namespaces'&lt;br /&gt;
&lt;br /&gt;
    verbs:&lt;br /&gt;
&lt;br /&gt;
      - 'get'&lt;br /&gt;
&lt;br /&gt;
      - 'watch'&lt;br /&gt;
&lt;br /&gt;
      - 'list'&lt;br /&gt;
&lt;br /&gt;
  - apiGroups:&lt;br /&gt;
&lt;br /&gt;
      - 'apps'&lt;br /&gt;
&lt;br /&gt;
    resources:&lt;br /&gt;
&lt;br /&gt;
      - 'replicasets'&lt;br /&gt;
&lt;br /&gt;
    verbs:&lt;br /&gt;
&lt;br /&gt;
      - 'get'&lt;br /&gt;
&lt;br /&gt;
      - 'list'&lt;br /&gt;
&lt;br /&gt;
      - 'watch'&lt;br /&gt;
&lt;br /&gt;
  - apiGroups:&lt;br /&gt;
&lt;br /&gt;
      - 'extensions'&lt;br /&gt;
&lt;br /&gt;
    resources:&lt;br /&gt;
&lt;br /&gt;
      - 'replicasets'&lt;br /&gt;
&lt;br /&gt;
    verbs:&lt;br /&gt;
&lt;br /&gt;
      - 'get'&lt;br /&gt;
&lt;br /&gt;
      - 'list'&lt;br /&gt;
&lt;br /&gt;
      - 'watch'&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
apiVersion: rbac.authorization.k8s.io/v1&lt;br /&gt;
&lt;br /&gt;
kind: ClusterRoleBinding&lt;br /&gt;
&lt;br /&gt;
metadata:&lt;br /&gt;
&lt;br /&gt;
  name: collector&lt;br /&gt;
&lt;br /&gt;
  labels:&lt;br /&gt;
&lt;br /&gt;
    app: collector&lt;br /&gt;
&lt;br /&gt;
roleRef:&lt;br /&gt;
&lt;br /&gt;
  apiGroup: rbac.authorization.k8s.io&lt;br /&gt;
&lt;br /&gt;
  kind: ClusterRole&lt;br /&gt;
&lt;br /&gt;
  name: collector&lt;br /&gt;
&lt;br /&gt;
subjects:&lt;br /&gt;
&lt;br /&gt;
  - kind: ServiceAccount&lt;br /&gt;
&lt;br /&gt;
    name: collector&lt;br /&gt;
&lt;br /&gt;
    namespace: default&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Конфигурация для GKE Autopilot или AWS EKS ===&lt;br /&gt;
Если вы используете '''Collector''' на '''GKE Autopilot''' или '''AWS EKS''', вам необходимо внести следующие изменения в конфигурацию:&lt;br /&gt;
&lt;br /&gt;
* '''Режим развёртывания''' : для доступа к файлам логов модуля на хосте необходимо развернуть коллектор как набор '''Daemon''' (DaemonSet). Подробную информацию о развёртывании коллектора как набора демонов (DaemonSet) см. в разделе «[[Развертывание Collector|Инструкции по развёртыванию]]» .&lt;br /&gt;
* '''Монтирование тома''' : Монтирование тома &amp;lt;code&amp;gt;/var/log/pods&amp;lt;/code&amp;gt; должно быть доступно только для чтения, в противном случае '''Collector''' не сможет получить доступ к файлам логов в этой директории.&lt;br /&gt;
&lt;br /&gt;
Ниже приведен пример конфигурации для '''Collector DaemonSet''' с необходимыми монтированиями томов для сбора логов модуля:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|apiVersion: apps/v1&lt;br /&gt;
&lt;br /&gt;
kind: DaemonSet&lt;br /&gt;
&lt;br /&gt;
metadata:&lt;br /&gt;
&lt;br /&gt;
  name: astromkey-otel-collector&lt;br /&gt;
&lt;br /&gt;
spec:&lt;br /&gt;
&lt;br /&gt;
  selector:&lt;br /&gt;
&lt;br /&gt;
    matchLabels:&lt;br /&gt;
&lt;br /&gt;
      app.kubernetes.io/name: astromkey-otel-collector&lt;br /&gt;
&lt;br /&gt;
  template:&lt;br /&gt;
&lt;br /&gt;
    metadata:&lt;br /&gt;
&lt;br /&gt;
      labels:&lt;br /&gt;
&lt;br /&gt;
        app.kubernetes.io/instance: astromkey-otel-collector&lt;br /&gt;
&lt;br /&gt;
        app.kubernetes.io/name: astromkey-otel-collector&lt;br /&gt;
&lt;br /&gt;
    spec:&lt;br /&gt;
&lt;br /&gt;
      serviceAccountName: collector&lt;br /&gt;
&lt;br /&gt;
      tolerations:&lt;br /&gt;
&lt;br /&gt;
      # these tolerations are to have the daemonset runnable on control plane nodes&lt;br /&gt;
&lt;br /&gt;
      # remove them if your control plane nodes should not run pods&lt;br /&gt;
&lt;br /&gt;
      - key: node-role.kubernetes.io/control-plane&lt;br /&gt;
&lt;br /&gt;
        operator: Exists&lt;br /&gt;
&lt;br /&gt;
        effect: NoSchedule&lt;br /&gt;
&lt;br /&gt;
      - key: node-role.kubernetes.io/master&lt;br /&gt;
&lt;br /&gt;
        operator: Exists&lt;br /&gt;
&lt;br /&gt;
        effect: NoSchedule&lt;br /&gt;
&lt;br /&gt;
      containers:&lt;br /&gt;
&lt;br /&gt;
        - args: [&amp;quot;--config&amp;quot;, &amp;quot;/conf/otel-collector-config.yaml&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
          env:&lt;br /&gt;
&lt;br /&gt;
            - name: MY_POD_IP&lt;br /&gt;
&lt;br /&gt;
              valueFrom:&lt;br /&gt;
&lt;br /&gt;
                fieldRef:&lt;br /&gt;
&lt;br /&gt;
                  apiVersion: v1&lt;br /&gt;
&lt;br /&gt;
                  fieldPath: status.podIP&lt;br /&gt;
&lt;br /&gt;
          image: ghcr.io/astromkey/astromkey-otel-collector/astromkey-otel-collector:0.37.0&lt;br /&gt;
&lt;br /&gt;
          name: otel-collector&lt;br /&gt;
&lt;br /&gt;
          resources:&lt;br /&gt;
&lt;br /&gt;
            limits:&lt;br /&gt;
&lt;br /&gt;
              memory: 512Mi&lt;br /&gt;
&lt;br /&gt;
          volumeMounts:&lt;br /&gt;
&lt;br /&gt;
            - name: astromkey-otel-collector-config&lt;br /&gt;
&lt;br /&gt;
              mountPath: /conf&lt;br /&gt;
&lt;br /&gt;
              # read-only volumeMount for the directory containing the pod logs&lt;br /&gt;
&lt;br /&gt;
            - name: logs&lt;br /&gt;
&lt;br /&gt;
              mountPath: /var/log&lt;br /&gt;
&lt;br /&gt;
              readOnly: true&lt;br /&gt;
&lt;br /&gt;
      volumes:&lt;br /&gt;
&lt;br /&gt;
        - configMap:&lt;br /&gt;
&lt;br /&gt;
            name: astromkey-otel-collector-config&lt;br /&gt;
&lt;br /&gt;
            items:&lt;br /&gt;
&lt;br /&gt;
              - key: otel-collector-config&lt;br /&gt;
&lt;br /&gt;
                path: otel-collector-config.yaml&lt;br /&gt;
&lt;br /&gt;
          name: astromkey-otel-collector-config&lt;br /&gt;
&lt;br /&gt;
          # hostPath volume containing the pod logs of the respective node the collector instance is running on&lt;br /&gt;
&lt;br /&gt;
        - hostPath:&lt;br /&gt;
&lt;br /&gt;
            path: /var/log&lt;br /&gt;
&lt;br /&gt;
          name: logs&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Компоненты ==&lt;br /&gt;
Для нашей конфигурации мы настроили следующие компоненты.&lt;br /&gt;
&lt;br /&gt;
=== Приемники ===&lt;br /&gt;
В разделе &amp;lt;code&amp;gt;receivers&amp;lt;/code&amp;gt; мы указываем приемник &amp;lt;code&amp;gt;filelog&amp;lt;/code&amp;gt; как активный компонент приемника для нашего экземпляра '''Collector'''.&lt;br /&gt;
&lt;br /&gt;
Приёмник '''Filelog''' поддерживает ряд [https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/v0.136.0/receiver/filelogreceiver/README.md параметров конфигурации]﻿, позволяющих настраивать его поведение. В качестве примера мы используем следующие:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;include&amp;lt;/code&amp;gt;— Указывает шаблон пути к файлам, которые мы хотим загрузить.&lt;br /&gt;
* &amp;lt;code&amp;gt;start_at&amp;lt;/code&amp;gt;— Указывает, должен ли получатель читать файл с начала или, только для самых последних записей, с конца.&lt;br /&gt;
* &amp;lt;code&amp;gt;operators&amp;lt;/code&amp;gt;— Настраивает оператор &amp;lt;code&amp;gt;[https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/v0.136.0/pkg/stanza/docs/operators/container.md container]&amp;lt;/code&amp;gt;, который автоматически анализирует каждую запись логов.﻿&lt;br /&gt;
&lt;br /&gt;
=== Процессоры ===&lt;br /&gt;
В разделе &amp;lt;code&amp;gt;processors&amp;lt;/code&amp;gt; мы указываем [https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/v0.136.0/processor/k8sattributesprocessor процессор﻿ &amp;lt;code&amp;gt;k8sattributes&amp;lt;/code&amp;gt;] со следующими параметрами:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;extract&amp;lt;/code&amp;gt;— Указывает, какую информацию следует извлечь.&lt;br /&gt;
* &amp;lt;code&amp;gt;pod_association&amp;lt;/code&amp;gt;— Указывает, как информация о модуле связана с атрибутами.&lt;br /&gt;
&lt;br /&gt;
=== Экспортеры ===&lt;br /&gt;
В разделе &amp;lt;code&amp;gt;exporters&amp;lt;/code&amp;gt; мы указываем [https://github.com/open-telemetry/opentelemetry-collector/tree/v0.136.0/exporter/otlphttpexporter экспортер &amp;lt;code&amp;gt;otlphttp&amp;lt;/code&amp;gt;]﻿ по умолчанию и настраиваем его с помощью '''URL-адреса''' нашего '''API''' Ключ-АСТРОМ и требуемого токена аутентификации, как установлено и настроено в разделе [[Kubernetes|Секреты Kubernetes]].&lt;br /&gt;
&lt;br /&gt;
=== Сервисные контейнеры ===&lt;br /&gt;
В разделе &amp;lt;code&amp;gt;service&amp;lt;/code&amp;gt; мы собираем объекты приёмника, процессора и экспортёра в контейнеры для трассировок, метрик и логов. Эти контейнеры позволяют нам отправлять сигналы '''OpenTelemetry''' через экземпляр '''Collector''' и автоматически дополнять их дополнительной информацией, специфичной для '''Kubernetes'''.&lt;/div&gt;</summary>
		<author><name>IKuznetsov</name></author>
	</entry>
</feed>