Мы планируем использовать открытую телеметрию в качестве инструмента ведения журнала в новом микросервисе на основе Spring-boot. Мы рассмотрели два способа использования otel: первый — использование ручного инструментария, предоставляемого Java, а другой — использование Spring-cloud-sleuth с использованием аннотации @NewSpan
.
Однако я не смог найти способ указать разные уровни ведения журнала, такие как INFO/ERROR/DEBUG. Нам нужна возможность контролировать и ограничивать чрезмерное ведение журнала. Однако при необходимости в устранении неполадок могут помочь дополнительные журналы отладки.
Как мы можем установить уровни ведения журнала с помощью open-telemetry java или spring-sleuth?
Уодате: Как прокомментировал @Jan, я запутался между трассировкой и ведением журнала. Однако я не могу найти документацию о поддержке ведения журнала с помощью opentelemetry-java. Есть ли способ сделать это? Кроме того, если мы используем разные инструменты для отслеживания и ведения журнала, будет ли это считаться плохой практикой?
Да.... Я новичок в концепции отслеживания. Итак, как в целом мы используем комбинацию трассировки и ведения журнала? Можем ли мы использовать разные фреймворки для обоих? Например, если мы используем open-telemetry для трассировки и slf4j/log4j для логирования, будет ли это считаться плохой практикой?
Я бы сказал, что это будет хорошее начало. Opentelemetry — это концепция метрик, трассировок, логов. К сожалению, реализация журналов Opentelemetry находится только в альфа-версии, поэтому для ведения журналов лучше использовать стандартные библиотеки журналов.
Итак, как в целом мы используем комбинацию трассировки и ведения журнала? Можем ли мы использовать разные фреймворки для обоих? Например, если мы используем open-telemetry для трассировки и slf4j/log4j для логирования, будет ли это считаться плохой практикой?
OpenTelemetry никогда не будет иметь API-интерфейс «логирования», предназначенный для использования обычными пользователями, предполагается, что он собирает журналы, созданные реальными библиотеками ведения журналов (такими как log4j или logback).
Поддержка OpenTelemetry для журналов все еще находится в состоянии альфа-версии (это означает, что SPI/SDK ведения журналов могут по-прежнему изменяться без обратной совместимости), но у нас уже есть специальные приложения OpenTelemetry для нескольких наиболее часто используемых библиотек журналов, таких как log4j. или logback. Вы должны быть в состоянии использовать их и ожидать относительно небольших критических изменений.
Нет ли поддержки slf4j с приложениями OpenTelemetry?
Только slf4j-api? Нет, у нас этого нет — вместо этого мы используем (вероятно) все фактические реализации журналирования, такие как logback или log4j. Вы можете использовать slf4j, например. log4j и агент (или настроенный вручную модуль добавления, если вы не используете javaagent) будут собирать все журналы.
Хорошо. Спасибо за подтверждение
Похоже, вы не понимаете разницы между
logging
(сущностьlog
) иtracing
(сущностьtrace
) и пытаетесь получить уровень логирования при трассировке.