Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 27 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,30 @@
Данный репозиторий содержит шаблоны (используемых в сервисах домена) ресурсов
# shared-resources

#Переопределяемые настройки `logback`
Данный репозиторий содержит шаблоны ресурсов, используемых в сервисах домена.

## Переопределяемые настройки `logback`

`application.yml`:

`application.yml`
```yaml
logback:
appender: JSON_K8S_CONSOLE # возможные значения: DEFAULT_CONSOLE || COLOR_CONSOLE || JSON_K8S_CONSOLE
```

#`pom.xml`
## Настройка `pom.xml`

Dependency:

```xml
<dependency>
<groupId>dev.vality</groupId>
<artifactId>shared-resources</artifactId>
<version>${shared.resources.version}</version>
</dependency>
```

Resources:

```xml
<resources>
<resource>
Expand All @@ -31,6 +40,7 @@ logback:
<filtering>true</filtering>
<excludes>
<exclude>Dockerfile</exclude>
<exclude>opentelemetry-javaagent.jar</exclude>
</excludes>
</resource>
<resource>
Expand All @@ -39,6 +49,9 @@ logback:
</resource>
</resources>
```

Plugin:

```xml
<plugin>
<groupId>org.apache.maven.plugins</groupId>
Expand Down Expand Up @@ -67,3 +80,13 @@ logback:
</executions>
</plugin>
```

## Отключение OpenTelemetry Java Agent

Для отключения Java agent используйте один из вариантов:

- Переменная окружения: `OTEL_JAVAAGENT_ENABLED=false`
- JVM-параметр: `-Dotel.javaagent.enabled=false`

Документация:
[Disabling the agent entirely](https://opentelemetry.io/docs/zero-code/java/agent/disable/#disabling-the-agent-entirely)
44 changes: 43 additions & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
</parent>

<artifactId>shared-resources</artifactId>
<version>4.0.0</version>
<version>5.0.0</version>
<packaging>jar</packaging>

<name>Java shared resources</name>
Expand All @@ -38,6 +38,10 @@
<url>https://github.com/valitydev/java-shared-resources/tree/master</url>
</scm>

<properties>
<opentelemetry.javaagent.version>2.26.1</opentelemetry.javaagent.version>
</properties>

<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
Expand All @@ -55,10 +59,48 @@
<artifactId>janino</artifactId>
<version>3.1.9</version>
</dependency>
<dependency>
<groupId>io.opentelemetry.javaagent</groupId>
<artifactId>opentelemetry-javaagent</artifactId>
<version>${opentelemetry.javaagent.version}</version>
</dependency>
<dependency>
<groupId>io.opentelemetry.instrumentation</groupId>
<artifactId>opentelemetry-logback-mdc-1.0</artifactId>
<version>${opentelemetry.javaagent.version}-alpha</version>
<scope>runtime</scope>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.6.1</version>
<executions>
<execution>
<id>copy-opentelemetry-javaagent-to-resources</id>
<phase>generate-resources</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>io.opentelemetry.javaagent</groupId>
<artifactId>opentelemetry-javaagent</artifactId>
<version>${opentelemetry.javaagent.version}</version>
<type>jar</type>
<overWrite>true</overWrite>
<outputDirectory>${project.basedir}/src/main/resources</outputDirectory>
<destFileName>opentelemetry-javaagent.jar</destFileName>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-remote-resources-plugin</artifactId>
<version>3.3.0</version>
Expand Down
3 changes: 2 additions & 1 deletion src/main/resources/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,12 @@ FROM ghcr.io/valitydev/temurin-jemalloc:sha-402a042

RUN useradd -s /bin/false -U -u 20000 vality

COPY --chown=vality:vality maven-shared-archive-resources/opentelemetry-javaagent.jar /opt/${artifactId}/opentelemetry-javaagent.jar
COPY --chown=vality:vality ${artifactId}-${version}.jar /opt/${artifactId}/${artifactId}.jar

USER vality:vality

CMD ["java", "-jar","/opt/${artifactId}/${artifactId}.jar"]
CMD ["java", "-javaagent:/opt/${artifactId}/opentelemetry-javaagent.jar", "-jar","/opt/${artifactId}/${artifactId}.jar"]

EXPOSE ${exposed.ports}

Expand Down
11 changes: 10 additions & 1 deletion src/main/resources/logback-spring.xml
Original file line number Diff line number Diff line change
Expand Up @@ -66,8 +66,17 @@
</encoder>
</appender>

<root level="${loggingLevelRoot}">
<appender name="JSON_K8S_CONSOLE_OTEL"
class="io.opentelemetry.instrumentation.logback.mdc.v1_0.OpenTelemetryAppender">
<addBaggage>true</addBaggage>
<traceIdKey>otel_trace_id</traceIdKey>
<spanIdKey>otel_span_id</spanIdKey>
<traceFlagsKey>otel_trace_flags</traceFlagsKey>
<appender-ref ref="JSON_K8S_CONSOLE"/>
</appender>

<root level="${loggingLevelRoot}">
<appender-ref ref="JSON_K8S_CONSOLE_OTEL"/>
</root>
</then>
</if>
Expand Down
Loading