Вот пошаговое руководство по генерации сертификатов с использованием собственного корневого сертификата (CA) для настройки mTLS между микросервисами....
продолжить чтение
В OpenTelemetry (otel), вложенность спанов (или отношения между спанами) определяется контекстом, а не порядком открытия или закрытия спанов в коде....
продолжить чтение
Да, рекомендуется вызывать span.SetStatus после span.RecordError, чтобы явно установить статус спана в зависимости от записанной ошибки. Это не обязательное требование, но такой порядок помогает сделать код более читаемым и логичным. Вот почему:...
продолжить чтение
Нет, метод span.SetStatus не записывает саму ошибку, а только устанавливает общий статус спана. Если вам нужно сохранить подробности об ошибке (например, текст сообщения или стек-трейс), то для этого используется метод span.RecordError....
продолжить чтение
span.RecordError(err) — это метод OpenTelemetry, который позволяет зафиксировать информацию об ошибке в текущем Span. Эта информация станет частью трассировки и поможет разработчикам проанализировать, что пошло не так....
продолжить чтение
Добавление трассировки (tracing) в код — мощный инструмент для анализа производительности и диагностики проблем, но важно сделать это аккуратно, чтобы код оставался читаемым и трассировка была полезной. Вот рекомендации по расстановке трассировок, их именованию и поддержанию чистоты кода....
продолжить чтение
В OpenTelemetry можно добавлять данные об ошибках в трейс с помощью событий и атрибутов Span. Это помогает фиксировать ошибки и предоставлять подробную информацию для анализа....
продолжить чтение
Для просмотра метрик Prometheus в Grafana через Explore выполните следующие шаги:...
продолжить чтение
Чтобы посмотреть метрики в Prometheus UI, выполните следующие шаги:...
продолжить чтение
Кусок кода на golang:
tracer := otel.Tracer("miner-login")
ctx, spanLogin := tracer.Start(ctx, "checks")
почему название "miner-login" не фигурирует потом в трейсе? это название не перезаписывает данные контекста?...
продолжить чтение
В Go для передачи контекста трассировки между архитектурными слоями обычно используется стандартный механизм контекста (context.Context) совместно с инструментами OpenTelemetry (Otel). Вот пошаговое руководство, как это сделать:...
продолжить чтение
TraceQL — это язык запросов, используемый в Grafana Tempo для фильтрации и анализа трассировок. Он позволяет выбирать трейсы и их части (спаны) на основе заданных условий. Ниже приводится описание синтаксиса TraceQL, ключевых элементов языка и примеры использования....
продолжить чтение
Давайте разберем ваш код и определим, в какой момент и как происходит отправка трейса:...
продолжить чтение
OpenTelemetry трассировщик в Go спроектирован так, чтобы минимизировать влияние на основной процесс выполнения программы. Он это достигает за счёт асинхронной обработки данных, эффективного управления буферизацией и отправкой, а также оптимизированного дизайна API. Вот основные принципы, которые помогают ему не тормозить основной процесс:...
продолжить чтение
jq — это мощный инструмент командной строки для обработки JSON-данных. Он позволяет легко фильтровать, преобразовывать, изменять и форматировать JSON. Это делает его особенно полезным при работе с API и данными в формате JSON в скриптах....
продолжить чтение
Для настройки доступа к HashiCorp Vault извне, вам нужно убедиться, что Vault настроен на прослушивание внешнего IP-адреса и правильно настроены сетевые правила и политики безопасности. Вот пошаговая инструкция, как это сделать:...
продолжить чтение
Ошибка E: Unable to locate package vault при попытке установить HashiCorp Vault в GitLab CI обычно указывает на то, что пакет не найден в репозиториях, доступных для вашей системы. Это может быть вызвано различными причинами, такими как:...
продолжить чтение
У HashiCorp Vault есть встроенный веб-интерфейс, который позволяет выполнять большинство операций по управлению секретами, настройке политик и управлению доступом. Веб-клиент Vault предоставляет графический интерфейс для удобного управления и доступен на порту, указанном в конфигурации Vault. Как получить доступ к веб-интерфейсу Vault Убедитесь, что Vault запущен с веб-интерфейсом. В стандартной конфигурации Vault веб-интерфейс включен......
продолжить чтение
Для запроса данных из HashiCorp Vault с удаленной машины необходимо настроить доступ и обеспечить безопасную аутентификацию. Вот основные шаги для организации такого взаимодействия:...
продолжить чтение
Для настройки автоматического получения секретов из HashiCorp Vault в GitLab CI/CD, необходимо настроить GitLab для взаимодействия с Vault. Эта интеграция позволяет вашим CI/CD пайплайнам безопасно получать секреты и использовать их в процессах сборки и развертывания....
продолжить чтение