IT заметки по программированию
IT заметки по программированию
IT заметки по программированию
IT заметки по программированию

Вот пошаговое руководство по генерации сертификатов с использованием собственного корневого сертификата (CA) для настройки mTLS между микросервисами....

продолжить чтение


В OpenTelemetry (otel), вложенность спанов (или отношения между спанами) определяется контекстом, а не порядком открытия или закрытия спанов в коде....

продолжить чтение


Да, рекомендуется вызывать span.SetStatus после span.RecordError, чтобы явно установить статус спана в зависимости от записанной ошибки. Это не обязательное требование, но такой порядок помогает сделать код более читаемым и логичным. Вот почему:...

продолжить чтение


Нет, метод span.SetStatus не записывает саму ошибку, а только устанавливает общий статус спана. Если вам нужно сохранить подробности об ошибке (например, текст сообщения или стек-трейс), то для этого используется метод span.RecordError....

продолжить чтение


span.RecordError(err) — это метод OpenTelemetry, который позволяет зафиксировать информацию об ошибке в текущем Span. Эта информация станет частью трассировки и поможет разработчикам проанализировать, что пошло не так....

продолжить чтение


Добавление трассировки (tracing) в код — мощный инструмент для анализа производительности и диагностики проблем, но важно сделать это аккуратно, чтобы код оставался читаемым и трассировка была полезной. Вот рекомендации по расстановке трассировок, их именованию и поддержанию чистоты кода....

продолжить чтение


В OpenTelemetry можно добавлять данные об ошибках в трейс с помощью событий и атрибутов Span. Это помогает фиксировать ошибки и предоставлять подробную информацию для анализа....

продолжить чтение


Настройка config.Producer.Partitioner в Sarama определяет стратегию выбора партиции для записи сообщения в топик Kafka. Это важный параметр, так как от него зависит распределение сообщений по партициям, что, в свою очередь, влияет на производительность и обработку сообщений....

продолжить чтение


Параметр config.Producer.RequiredAcks в Sarama управляет количеством подтверждений от Kafka-брокеров, которые требуется продюсеру для успешного завершения отправки сообщения. Этот параметр определяет баланс между надежностью доставки сообщений и производительностью....

продолжить чтение


sarama.BalanceStrategyRange — это один из алгоритмов распределения партиций Kafka между консюмерами в библиотеке Sarama для Go. Этот алгоритм используется в рамках процесса балансировки нагрузки, происходящего в группе консумеров....

продолжить чтение


Пакет clickhouse-go поддерживает буферизацию и пакетную запись данных, что позволяет эффективно загружать большие объемы данных в ClickHouse. Это особенно важно для случаев, когда нужно вставлять большое количество данных за один запрос, чтобы уменьшить время на запись и снизить нагрузку на сеть....

продолжить чтение


В Sarama размер буфера, период отправки и другие параметры продюсера можно настроить через объект конфигурации sarama.Config. Вот ключевые параметры, отвечающие за буферизацию, размер сообщений и тайминги:...

продолжить чтение


В Go для передачи контекста трассировки между архитектурными слоями обычно используется стандартный механизм контекста (context.Context) совместно с инструментами OpenTelemetry (Otel). Вот пошаговое руководство, как это сделать:...

продолжить чтение


TraceQL — это язык запросов, используемый в Grafana Tempo для фильтрации и анализа трассировок. Он позволяет выбирать трейсы и их части (спаны) на основе заданных условий. Ниже приводится описание синтаксиса TraceQL, ключевых элементов языка и примеры использования....

продолжить чтение