mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-02-15 05:37:32 +00:00
chore(server): switch to prometheus (#12352)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added platform-specific monitoring integration for Google Cloud Platform (GCP) in multiple services, enabling automated pod monitoring for deployments on GCP. - **Chores** - Removed an unused dependency related to Google Cloud monitoring from the backend server package. - **Refactor** - Updated internal monitoring implementation by removing a previously used metric reader method for GCP integration. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
This commit is contained in:
12
.github/helm/affine/charts/doc/templates/monitoring.yaml
vendored
Normal file
12
.github/helm/affine/charts/doc/templates/monitoring.yaml
vendored
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
{{- if eq .Values.global.deployment.platform "gcp" -}}
|
||||||
|
apiVersion: monitoring.googleapis.com/v1
|
||||||
|
kind: ClusterPodMonitoring
|
||||||
|
metadata:
|
||||||
|
name: "{{ include "doc.fullname" . }}"
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
{{- include "doc.selectorLabels" . | nindent 4 }}
|
||||||
|
endpoints:
|
||||||
|
- port: 9464
|
||||||
|
interval: 30s
|
||||||
|
{{- end }}
|
||||||
12
.github/helm/affine/charts/graphql/templates/monitoring.yaml
vendored
Normal file
12
.github/helm/affine/charts/graphql/templates/monitoring.yaml
vendored
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
{{- if eq .Values.global.deployment.platform "gcp" -}}
|
||||||
|
apiVersion: monitoring.googleapis.com/v1
|
||||||
|
kind: ClusterPodMonitoring
|
||||||
|
metadata:
|
||||||
|
name: "{{ include "graphql.fullname" . }}"
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
{{- include "graphql.selectorLabels" . | nindent 4 }}
|
||||||
|
endpoints:
|
||||||
|
- port: 9464
|
||||||
|
interval: 30s
|
||||||
|
{{- end }}
|
||||||
12
.github/helm/affine/charts/renderer/templates/monitoring.yaml
vendored
Normal file
12
.github/helm/affine/charts/renderer/templates/monitoring.yaml
vendored
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
{{- if eq .Values.global.deployment.platform "gcp" -}}
|
||||||
|
apiVersion: monitoring.googleapis.com/v1
|
||||||
|
kind: ClusterPodMonitoring
|
||||||
|
metadata:
|
||||||
|
name: "{{ include "renderer.fullname" . }}"
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
{{- include "renderer.selectorLabels" . | nindent 4 }}
|
||||||
|
endpoints:
|
||||||
|
- port: 9464
|
||||||
|
interval: 30s
|
||||||
|
{{- end }}
|
||||||
12
.github/helm/affine/charts/sync/templates/monitoring.yaml
vendored
Normal file
12
.github/helm/affine/charts/sync/templates/monitoring.yaml
vendored
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
{{- if eq .Values.global.deployment.platform "gcp" -}}
|
||||||
|
apiVersion: monitoring.googleapis.com/v1
|
||||||
|
kind: ClusterPodMonitoring
|
||||||
|
metadata:
|
||||||
|
name: "{{ include "sync.fullname" . }}"
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
{{- include "sync.selectorLabels" . | nindent 4 }}
|
||||||
|
endpoints:
|
||||||
|
- port: 9464
|
||||||
|
interval: 30s
|
||||||
|
{{- end }}
|
||||||
@@ -36,7 +36,6 @@
|
|||||||
"@aws-sdk/client-s3": "^3.779.0",
|
"@aws-sdk/client-s3": "^3.779.0",
|
||||||
"@aws-sdk/s3-request-presigner": "^3.779.0",
|
"@aws-sdk/s3-request-presigner": "^3.779.0",
|
||||||
"@fal-ai/serverless-client": "^0.15.0",
|
"@fal-ai/serverless-client": "^0.15.0",
|
||||||
"@google-cloud/opentelemetry-cloud-monitoring-exporter": "^0.20.0",
|
|
||||||
"@google-cloud/opentelemetry-cloud-trace-exporter": "^2.4.1",
|
"@google-cloud/opentelemetry-cloud-trace-exporter": "^2.4.1",
|
||||||
"@google-cloud/opentelemetry-resource-util": "^2.4.0",
|
"@google-cloud/opentelemetry-resource-util": "^2.4.0",
|
||||||
"@nestjs-cls/transactional": "^2.6.1",
|
"@nestjs-cls/transactional": "^2.6.1",
|
||||||
|
|||||||
@@ -1,13 +1,8 @@
|
|||||||
import { MetricExporter } from '@google-cloud/opentelemetry-cloud-monitoring-exporter';
|
|
||||||
import { TraceExporter } from '@google-cloud/opentelemetry-cloud-trace-exporter';
|
import { TraceExporter } from '@google-cloud/opentelemetry-cloud-trace-exporter';
|
||||||
import { GcpDetectorSync } from '@google-cloud/opentelemetry-resource-util';
|
import { GcpDetectorSync } from '@google-cloud/opentelemetry-resource-util';
|
||||||
import { Global, Injectable, Module, Provider } from '@nestjs/common';
|
import { Global, Injectable, Module, Provider } from '@nestjs/common';
|
||||||
import { getEnv } from '@opentelemetry/core';
|
import { getEnv } from '@opentelemetry/core';
|
||||||
import { Resource } from '@opentelemetry/resources';
|
import { Resource } from '@opentelemetry/resources';
|
||||||
import {
|
|
||||||
MetricReader,
|
|
||||||
PeriodicExportingMetricReader,
|
|
||||||
} from '@opentelemetry/sdk-metrics';
|
|
||||||
import { SpanExporter } from '@opentelemetry/sdk-trace-node';
|
import { SpanExporter } from '@opentelemetry/sdk-trace-node';
|
||||||
import {
|
import {
|
||||||
SEMRESATTRS_CONTAINER_NAME,
|
SEMRESATTRS_CONTAINER_NAME,
|
||||||
@@ -31,17 +26,6 @@ export class GCloudOpentelemetryOptionsFactory extends OpentelemetryOptionsFacto
|
|||||||
.merge(new GcpDetectorSync().detect());
|
.merge(new GcpDetectorSync().detect());
|
||||||
}
|
}
|
||||||
|
|
||||||
override getMetricReader(): MetricReader {
|
|
||||||
return new PeriodicExportingMetricReader({
|
|
||||||
exportIntervalMillis: 30000,
|
|
||||||
exportTimeoutMillis: 10000,
|
|
||||||
exporter: new MetricExporter({
|
|
||||||
prefix: 'custom.googleapis.com',
|
|
||||||
}),
|
|
||||||
metricProducers: this.getMetricsProducers(),
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
override getSpanExporter(): SpanExporter {
|
override getSpanExporter(): SpanExporter {
|
||||||
return new TraceExporter();
|
return new TraceExporter();
|
||||||
}
|
}
|
||||||
|
|||||||
35
yarn.lock
35
yarn.lock
@@ -917,7 +917,6 @@ __metadata:
|
|||||||
"@aws-sdk/s3-request-presigner": "npm:^3.779.0"
|
"@aws-sdk/s3-request-presigner": "npm:^3.779.0"
|
||||||
"@faker-js/faker": "npm:^9.6.0"
|
"@faker-js/faker": "npm:^9.6.0"
|
||||||
"@fal-ai/serverless-client": "npm:^0.15.0"
|
"@fal-ai/serverless-client": "npm:^0.15.0"
|
||||||
"@google-cloud/opentelemetry-cloud-monitoring-exporter": "npm:^0.20.0"
|
|
||||||
"@google-cloud/opentelemetry-cloud-trace-exporter": "npm:^2.4.1"
|
"@google-cloud/opentelemetry-cloud-trace-exporter": "npm:^2.4.1"
|
||||||
"@google-cloud/opentelemetry-resource-util": "npm:^2.4.0"
|
"@google-cloud/opentelemetry-resource-util": "npm:^2.4.0"
|
||||||
"@nestjs-cls/transactional": "npm:^2.6.1"
|
"@nestjs-cls/transactional": "npm:^2.6.1"
|
||||||
@@ -5988,23 +5987,6 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@google-cloud/opentelemetry-cloud-monitoring-exporter@npm:^0.20.0":
|
|
||||||
version: 0.20.0
|
|
||||||
resolution: "@google-cloud/opentelemetry-cloud-monitoring-exporter@npm:0.20.0"
|
|
||||||
dependencies:
|
|
||||||
"@google-cloud/opentelemetry-resource-util": "npm:^2.4.0"
|
|
||||||
"@google-cloud/precise-date": "npm:^4.0.0"
|
|
||||||
google-auth-library: "npm:^9.0.0"
|
|
||||||
googleapis: "npm:^137.0.0"
|
|
||||||
peerDependencies:
|
|
||||||
"@opentelemetry/api": ^1.0.0
|
|
||||||
"@opentelemetry/core": ^1.0.0
|
|
||||||
"@opentelemetry/resources": ^1.0.0
|
|
||||||
"@opentelemetry/sdk-metrics": ^1.0.0
|
|
||||||
checksum: 10/b71f9335e32e9f5caf9b3c9511eb7029db5cc1d3d86c8e35f5ea25a47ee39ef8bb1fb635d2f454c933f229351841f08453cb6f89a41f0bd6dab2011c783b2c4b
|
|
||||||
languageName: node
|
|
||||||
linkType: hard
|
|
||||||
|
|
||||||
"@google-cloud/opentelemetry-cloud-trace-exporter@npm:^2.4.1":
|
"@google-cloud/opentelemetry-cloud-trace-exporter@npm:^2.4.1":
|
||||||
version: 2.4.1
|
version: 2.4.1
|
||||||
resolution: "@google-cloud/opentelemetry-cloud-trace-exporter@npm:2.4.1"
|
resolution: "@google-cloud/opentelemetry-cloud-trace-exporter@npm:2.4.1"
|
||||||
@@ -6034,13 +6016,6 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@google-cloud/precise-date@npm:^4.0.0":
|
|
||||||
version: 4.0.0
|
|
||||||
resolution: "@google-cloud/precise-date@npm:4.0.0"
|
|
||||||
checksum: 10/7c897bcad6a40efd77df165fca8a57bd3fbb84e6ace848085b16233c1086c32c06258caa88b9c9aaf7d4029ded13d01b57d1b5fd808dc5722cf57626ac4a386b
|
|
||||||
languageName: node
|
|
||||||
linkType: hard
|
|
||||||
|
|
||||||
"@google/generative-ai@npm:^0.24.0":
|
"@google/generative-ai@npm:^0.24.0":
|
||||||
version: 0.24.1
|
version: 0.24.1
|
||||||
resolution: "@google/generative-ai@npm:0.24.1"
|
resolution: "@google/generative-ai@npm:0.24.1"
|
||||||
@@ -22728,16 +22703,6 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"googleapis@npm:^137.0.0":
|
|
||||||
version: 137.1.0
|
|
||||||
resolution: "googleapis@npm:137.1.0"
|
|
||||||
dependencies:
|
|
||||||
google-auth-library: "npm:^9.0.0"
|
|
||||||
googleapis-common: "npm:^7.0.0"
|
|
||||||
checksum: 10/5d7cee8a7293701a19db3ee515272fbb932c343d1640ca21a3996dc717649817a6d169cd8370ee6e535bd2d48cb70f0b426abe691b22830d588419ebe95b5740
|
|
||||||
languageName: node
|
|
||||||
linkType: hard
|
|
||||||
|
|
||||||
"got@npm:^11.7.0, got@npm:^11.8.5":
|
"got@npm:^11.7.0, got@npm:^11.8.5":
|
||||||
version: 11.8.6
|
version: 11.8.6
|
||||||
resolution: "got@npm:11.8.6"
|
resolution: "got@npm:11.8.6"
|
||||||
|
|||||||
Reference in New Issue
Block a user