Skip to content

Commit 7338791

Browse files
committed
repalced opentelemetry java agent with springboot actuator, logback loki appender & spring boot tempo
1 parent a5f01df commit 7338791

File tree

7 files changed

+82
-34
lines changed

7 files changed

+82
-34
lines changed

src/Services/Webhooks/webhooks-api/Dockerfile

+1-2
Original file line numberDiff line numberDiff line change
@@ -44,15 +44,14 @@ RUN mvn -f /src/Services/Webhooks/webhooks-api/pom.xml -s /src/settings.xml pack
4444
FROM base AS final
4545
WORKDIR /app
4646
COPY --from=build /src/Services/Webhooks/webhooks-api/target/webhooks-api.jar ./webhooks-api.jar
47-
COPY --from=build /src/Services/Webhooks/webhooks-api/target/opentelemetry-javaagent.jar ./opentelemetry-javaagent.jar
4847

4948
# CMD tail -f /dev/null
5049

5150
## ADDED SLEEP FOR 60 SECONDS TO WAIT FOR DB SERVER TO BE UP. with out sh sleep is failing
5251
# ENTRYPOINT ["sh", "-c", "sleep 60 && java -jar webhooks-api.jar"]
5352
# ENTRYPOINT sleep 60 && java -jar webhooks-api.jar
5453
# Sleep not working . Giving error during startup
55-
ENTRYPOINT ["java", "-javaagent:./opentelemetry-javaagent.jar", "-Dspring.profiles.active=dev", "-jar", "webhooks-api.jar"]
54+
ENTRYPOINT ["java", "-Dspring.profiles.active=dev", "-jar", "webhooks-api.jar"]
5655

5756

5857

src/Services/Webhooks/webhooks-api/pom.xml

-21
Original file line numberDiff line numberDiff line change
@@ -25,27 +25,6 @@
2525
<groupId>org.springframework.boot</groupId>
2626
<artifactId>spring-boot-starter-webflux</artifactId>
2727
</dependency>
28-
<dependency>
29-
<groupId>io.opentelemetry.javaagent</groupId>
30-
<artifactId>opentelemetry-javaagent</artifactId>
31-
</dependency>
32-
33-
<dependency>
34-
<groupId>org.springframework.boot</groupId>
35-
<artifactId>spring-boot-devtools</artifactId>
36-
<scope>runtime</scope>
37-
<optional>true</optional>
38-
</dependency>
39-
<dependency>
40-
<groupId>org.projectlombok</groupId>
41-
<artifactId>lombok</artifactId>
42-
<optional>true</optional>
43-
</dependency>
44-
<dependency>
45-
<groupId>org.springframework.boot</groupId>
46-
<artifactId>spring-boot-starter-test</artifactId>
47-
<scope>test</scope>
48-
</dependency>
4928

5029
<dependency>
5130
<groupId>org.springframework.boot</groupId>

src/Services/Webhooks/webhooks-api/src/main/java/com/eshoponcontainers/webhooksapi/config/SecurityConfig.java

+1
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Excepti
2929
http
3030
.authorizeHttpRequests((authorize) -> authorize
3131
.requestMatchers(HttpMethod.OPTIONS).permitAll()
32+
.requestMatchers("/actuator/**").permitAll()
3233
.anyRequest().authenticated())
3334
.sessionManagement(c -> c.sessionCreationPolicy(SessionCreationPolicy.STATELESS))
3435
.oauth2ResourceServer((oauth2) -> oauth2

src/Services/Webhooks/webhooks-api/src/main/resources/application.yml

+36-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,39 @@
1-
spring.profiles.active: dev
2-
spring.application.name: webhooks-api
1+
spring:
2+
application:
3+
name: webhooks-api
4+
profiles:
5+
active:
6+
- dev
7+
8+
#enable management endpoints
9+
management:
10+
metrics:
11+
distribution:
12+
percentiles-histogram:
13+
http:
14+
server:
15+
requests: true
16+
tracing:
17+
sampling:
18+
probability: 1.0
19+
20+
endpoints:
21+
web:
22+
exposure:
23+
include: "*"
24+
endpoint:
25+
health:
26+
show-details: always
27+
28+
prometheus:
29+
metrics:
30+
export:
31+
enabled: true
32+
33+
zipkin:
34+
tracing:
35+
endpoint: http://tempo:9411/api/v2/spans
36+
337

438
logging:
539
level:
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<configuration>
3+
<include resource="org/springframework/boot/logging/logback/base.xml" />
4+
<springProperty scope="context" name="appName" source="spring.application.name" />
5+
6+
<appender name="LOKI" class="com.github.loki4j.logback.Loki4jAppender">
7+
<http>
8+
<url>http://loki:3100/loki/api/v1/push</url>
9+
</http>
10+
<format>
11+
<label>
12+
<pattern>application=${appName},host=${HOSTNAME},level=%level</pattern>
13+
</label>
14+
<message>
15+
<pattern>${FILE_LOG_PATTERN}</pattern>
16+
</message>
17+
<sortByTime>true</sortByTime>
18+
</format>
19+
</appender>
20+
21+
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
22+
<encoder>
23+
<pattern>${CONSOLE_LOG_PATTERN}</pattern>
24+
</encoder>
25+
</appender>
26+
27+
<root level="INFO">
28+
<appender-ref ref="LOKI" />
29+
<appender-ref ref="CONSOLE" />
30+
</root>
31+
</configuration>
32+

src/docker-compose.override.yml

+3
Original file line numberDiff line numberDiff line change
@@ -20,5 +20,8 @@ services:
2020
ordering-backgroundtasks:
2121
environment:
2222
SERVER_SERVLET_CONTEXT_PATH: "/ordering-backgroundtasks"
23+
webhooks-api:
24+
environment:
25+
SERVER_SERVLET_CONTEXT_PATH: "/webhooks-api"
2326

2427

src/docker-compose.yml

+9-9
Original file line numberDiff line numberDiff line change
@@ -200,15 +200,15 @@ services:
200200
image: ${REGISTRY:-springeshop}/webhooksapi:latest
201201
env_file:
202202
- .env
203-
environment:
204-
OTEL_TRACES_EXPORTER: "jaeger"
205-
OTEL_SERVICE_NAME: "webhooks-api"
206-
OTEL_EXPORTER_JAEGER_ENDPOINT: "http://jaeger:14250"
207-
OTEL_METRICS_EXPORTER: "prometheus"
208-
OTEL_EXPORTER_PROMETHEUS_HOST: "0.0.0.0"
209-
OTEL_EXPORTER_PROMETHEUS_PORT: "9464"
210-
OTEL_LOGS_EXPORTER: "otlp"
211-
OTEL_EXPORTER_OTLP_LOGS_ENDPOINT: "http://collector:4317"
203+
# environment:
204+
# OTEL_TRACES_EXPORTER: "jaeger"
205+
# OTEL_SERVICE_NAME: "webhooks-api"
206+
# OTEL_EXPORTER_JAEGER_ENDPOINT: "http://jaeger:14250"
207+
# OTEL_METRICS_EXPORTER: "prometheus"
208+
# OTEL_EXPORTER_PROMETHEUS_HOST: "0.0.0.0"
209+
# OTEL_EXPORTER_PROMETHEUS_PORT: "9464"
210+
# OTEL_LOGS_EXPORTER: "otlp"
211+
# OTEL_EXPORTER_OTLP_LOGS_ENDPOINT: "http://collector:4317"
212212
depends_on:
213213
db:
214214
condition: service_healthy

0 commit comments

Comments
 (0)