You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by wa...@apache.org on 2024/01/25 01:06:17 UTC
(skywalking-showcase) branch main updated: Add hierarchy relations auto-matching for MYSQL/POSTGRESQL/SO11Y_OAP/VIRTUAL_DATABASE (#159)
This is an automated email from the ASF dual-hosted git repository.
wankai pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/skywalking-showcase.git
The following commit(s) were added to refs/heads/main by this push:
new 22491ac Add hierarchy relations auto-matching for MYSQL/POSTGRESQL/SO11Y_OAP/VIRTUAL_DATABASE (#159)
22491ac is described below
commit 22491acef5d80f2bae56590a7947bbe6ab1739f2
Author: Wan Kai <wa...@foxmail.com>
AuthorDate: Thu Jan 25 09:06:12 2024 +0800
Add hierarchy relations auto-matching for MYSQL/POSTGRESQL/SO11Y_OAP/VIRTUAL_DATABASE (#159)
---
Makefile.in | 4 ++--
.../kubernetes/templates/feature-agent/resources.yaml | 11 +++++++++--
.../templates/feature-mysql-monitor/opentelemetry-config.yaml | 5 ++++-
.../feature-postgresql-monitor/opentelemetry-config.yaml | 5 ++++-
.../templates/feature-so11y/opentelemetry-config.yaml | 2 +-
services/songs-service/build.gradle | 1 +
services/songs-service/src/main/resources/application.yaml | 11 +++++++++++
7 files changed, 32 insertions(+), 7 deletions(-)
diff --git a/Makefile.in b/Makefile.in
index d01c419..983ed3b 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -29,10 +29,10 @@ ES_IMAGE ?= docker.elastic.co/elasticsearch/elasticsearch-oss
ES_IMAGE_TAG ?= 7.10.2
SW_OAP_IMAGE ?= ghcr.io/apache/skywalking/oap
-SW_OAP_IMAGE_TAG ?= cc79bf688cd6e3faf091be9103f8254fbec0befe
+SW_OAP_IMAGE_TAG ?= df3b0960914ae2cad43f96b110833032d0ff7109
SW_UI_IMAGE ?= ghcr.io/apache/skywalking/ui
-SW_UI_IMAGE_TAG ?= cc79bf688cd6e3faf091be9103f8254fbec0befe
+SW_UI_IMAGE_TAG ?= df3b0960914ae2cad43f96b110833032d0ff7109
SW_CLI_IMAGE ?= ghcr.io/apache/skywalking-cli/skywalking-cli:0883266bfaa36612927b69e35781b64ea181758d
SW_EVENT_EXPORTER_IMAGE ?= ghcr.io/apache/skywalking-kubernetes-event-exporter/skywalking-kubernetes-event-exporter:8a012a3f968cb139f817189afb9b3748841bba22
diff --git a/deploy/platform/kubernetes/templates/feature-agent/resources.yaml b/deploy/platform/kubernetes/templates/feature-agent/resources.yaml
index b6963c8..f3b6811 100644
--- a/deploy/platform/kubernetes/templates/feature-agent/resources.yaml
+++ b/deploy/platform/kubernetes/templates/feature-agent/resources.yaml
@@ -153,7 +153,14 @@ spec:
value: tcp://activemq:61616
- name: ACTIVE_MQ_QUEUE
value: queue-songs-ping
-
+ {{- if .Values.features.postgresqlMonitor.enabled }}
+ - name: DATA_SOURCE_URL
+ value: jdbc:postgresql://psql.{{ .Release.Namespace }}.svc.cluster.local:5432/postgres
+ - name: DATA_SOURCE_USER
+ value: postgres
+ - name: DATA_SOURCE_PASSWORD
+ value: password
+ {{- end }}
---
apiVersion: v1
kind: Service
@@ -510,4 +517,4 @@ spec:
ports:
- protocol: TCP
port: 80
- targetPort: 80
\ No newline at end of file
+ targetPort: 80
diff --git a/deploy/platform/kubernetes/templates/feature-mysql-monitor/opentelemetry-config.yaml b/deploy/platform/kubernetes/templates/feature-mysql-monitor/opentelemetry-config.yaml
index c79697c..cad4d2d 100644
--- a/deploy/platform/kubernetes/templates/feature-mysql-monitor/opentelemetry-config.yaml
+++ b/deploy/platform/kubernetes/templates/feature-mysql-monitor/opentelemetry-config.yaml
@@ -28,8 +28,11 @@
- source_labels: [ __meta_kubernetes_pod_container_name, __meta_kubernetes_pod_container_port_name ]
action: keep
regex: mysqld-exporter;metrics # @feature: mysql; reference the name of the metrics port
- - source_labels: [ __meta_kubernetes_pod_name ]
+ - source_labels: [ ]
target_label: host_name
+ replacement: mysql.{{ .Release.Namespace }}
+ - source_labels: [ __meta_kubernetes_pod_name ]
+ target_label: service_instance_id
regex: (.+)
replacement: $$1
diff --git a/deploy/platform/kubernetes/templates/feature-postgresql-monitor/opentelemetry-config.yaml b/deploy/platform/kubernetes/templates/feature-postgresql-monitor/opentelemetry-config.yaml
index 46b2a76..9cb0f63 100644
--- a/deploy/platform/kubernetes/templates/feature-postgresql-monitor/opentelemetry-config.yaml
+++ b/deploy/platform/kubernetes/templates/feature-postgresql-monitor/opentelemetry-config.yaml
@@ -28,8 +28,11 @@
- source_labels: [ __meta_kubernetes_pod_container_name, __meta_kubernetes_pod_container_port_name ]
action: keep
regex: psql-exporter;metrics # @feature: postgresql; reference the name of the metrics port
- - source_labels: [ __meta_kubernetes_pod_name ]
+ - source_labels: [ ]
target_label: host_name
+ replacement: psql.{{ .Release.Namespace }}
+ - source_labels: [ __meta_kubernetes_pod_name ]
+ target_label: service_instance_id
regex: (.+)
replacement: $$1
diff --git a/deploy/platform/kubernetes/templates/feature-so11y/opentelemetry-config.yaml b/deploy/platform/kubernetes/templates/feature-so11y/opentelemetry-config.yaml
index 50c31da..f208708 100644
--- a/deploy/platform/kubernetes/templates/feature-so11y/opentelemetry-config.yaml
+++ b/deploy/platform/kubernetes/templates/feature-so11y/opentelemetry-config.yaml
@@ -28,7 +28,7 @@
regex: oap;metrics # @feature: so11y; reference the name of the metrics port
- source_labels: [ ]
target_label: service
- replacement: oap-server
+ replacement: {{ include "skywalking.oap.fullname" .Subcharts.skywalking }}.{{ .Release.Namespace }}
- source_labels: [ __meta_kubernetes_pod_name ]
target_label: host_name
regex: (.+)
diff --git a/services/songs-service/build.gradle b/services/songs-service/build.gradle
index 6afddb2..9c9c443 100644
--- a/services/songs-service/build.gradle
+++ b/services/songs-service/build.gradle
@@ -45,6 +45,7 @@ dependencies {
implementation 'org.springframework.boot:spring-boot-starter-actuator'
implementation 'org.springframework.kafka:spring-kafka'
implementation 'com.h2database:h2'
+ runtimeOnly 'org.postgresql:postgresql'
implementation 'org.apache.skywalking:apm-toolkit-logback-1.x:8.11.0'
implementation 'org.apache.skywalking:apm-toolkit-micrometer-registry:8.11.0'
implementation 'com.google.guava:guava:23.0'
diff --git a/services/songs-service/src/main/resources/application.yaml b/services/songs-service/src/main/resources/application.yaml
index 29835e0..e162faf 100644
--- a/services/songs-service/src/main/resources/application.yaml
+++ b/services/songs-service/src/main/resources/application.yaml
@@ -20,5 +20,16 @@ server:
address: 0.0.0.0
spring:
+ sql:
+ init:
+ data-locations: classpath:data.sql
+ mode: always
+ datasource:
+ url: ${DATA_SOURCE_URL:jdbc:h2:mem:mem-db;DB_CLOSE_DELAY=-1;DATABASE_TO_UPPER=FALSE}
+ username: ${DATA_SOURCE_USER:}
+ password: ${DATA_SOURCE_PASSWORD:}
jpa:
defer-datasource-initialization: true
+ hibernate:
+ ddl-auto: create
+