From 3a6fe7e7ad1f52df643db7c3446473f243e8cce8 Mon Sep 17 00:00:00 2001 From: liyang Date: Thu, 19 Sep 2024 12:09:31 +0800 Subject: [PATCH 1/7] feat: add opentelemetry usage example --- examples/README.md | 1 + examples/healthcheck/main.go | 1 + examples/opentelemetry/README.md | 75 ++++++++ examples/opentelemetry/go.mod | 42 +++++ examples/opentelemetry/go.sum | 163 ++++++++++++++++++ examples/opentelemetry/main.go | 285 +++++++++++++++++++++++++++++++ images/tracing.png | Bin 0 -> 153752 bytes 7 files changed, 567 insertions(+) create mode 100644 examples/opentelemetry/README.md create mode 100644 examples/opentelemetry/go.mod create mode 100644 examples/opentelemetry/go.sum create mode 100644 examples/opentelemetry/main.go create mode 100644 images/tracing.png diff --git a/examples/README.md b/examples/README.md index 3a450de..d085321 100644 --- a/examples/README.md +++ b/examples/README.md @@ -16,6 +16,7 @@ docker run --rm -p 4000-4003:4000-4003 \ - [table](table/README.md) - [object](object/README.md) - [healthcheck](healthcheck/README.md) +- [opentelemetry](opentelemetry/README.md) ## Query diff --git a/examples/healthcheck/main.go b/examples/healthcheck/main.go index d99e3b3..1af3ce9 100644 --- a/examples/healthcheck/main.go +++ b/examples/healthcheck/main.go @@ -39,6 +39,7 @@ func main() { _, err := client.HealthCheck(context.Background()) if err != nil { log.Println("failed to health check:", err) + return } log.Println("the greptimedb is health") } diff --git a/examples/opentelemetry/README.md b/examples/opentelemetry/README.md new file mode 100644 index 0000000..56ab74f --- /dev/null +++ b/examples/opentelemetry/README.md @@ -0,0 +1,75 @@ +# Enable Opentelemetry + +## Install Jaeger +Use [Jaeger](https://github.com/jaegertracing/helm-charts/tree/main/charts/jaeger) as the backend storage for tracing, save the following configuration to **jaeger-values.yaml** file: +```yaml +provisionDataStore: + cassandra: false + +storage: + type: memory + +agent: + enabled: false + +collector: + enabled: false + +query: + enabled: false + +allInOne: + enabled: true + + extraEnv: + - name: COLLECTOR_OTLP_ENABLED + value: "true" +``` + +Use [helm](https://helm.sh/) command to install: +``` +helm repo add jaegertracing https://jaegertracing.github.io/helm-charts +``` +``` +helm install jaeger jaegertracing/jaeger --values jaeger-values.yaml -n default +``` + +Expose the jaeger port to the localhost: +``` +kubectl port-forward svc/jaeger-collector -n default 4317:4317 > jaeger.out & +``` +``` +kubectl port-forward svc/jaeger-query -n default 16686:16686 > jaeger.out & +``` + +## Running the Example +```go +go run main.go +``` + +Output: + +```log +2024/09/19 11:36:29 Waiting for connection... +2024/09/19 11:36:29 serving metrics at localhost:2233/metrics +2024/09/19 11:36:29 affected rows: 1 +2024/09/19 11:36:29 Sleep 30s... +2024/09/19 11:36:39 Done! +``` + +## View metrics +We can use `curl localhost:2233/metrics` to view the metrics data. Also, configure [Prometheus](https://prometheus.io/) to scrape it as follows: +``` +global: + scrape_interval: 10s + +scrape_configs: + - job_name: greptimedb-ingester-go + static_configs: + - targets: ['localhost:2233'] +``` + +## View tracing +Open the address http://localhost:16686/ to view tracing data. + +![tracing.png](../../images/tracing.png) diff --git a/examples/opentelemetry/go.mod b/examples/opentelemetry/go.mod new file mode 100644 index 0000000..745696e --- /dev/null +++ b/examples/opentelemetry/go.mod @@ -0,0 +1,42 @@ +module opentelemetry-example + +go 1.22 + +toolchain go1.22.7 + +require ( + github.com/GreptimeTeam/greptimedb-ingester-go v0.5.3-0.20240918162118-d3f1530a9887 + github.com/prometheus/client_golang v1.20.4 + go.opentelemetry.io/otel v1.30.0 + go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.30.0 + go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.30.0 + go.opentelemetry.io/otel/exporters/prometheus v0.52.0 + go.opentelemetry.io/otel/sdk v1.30.0 + go.opentelemetry.io/otel/sdk/metric v1.30.0 + go.opentelemetry.io/otel/trace v1.30.0 + google.golang.org/grpc v1.66.2 + github.com/GreptimeTeam/greptime-proto v0.7.0 // indirect + github.com/beorn7/perks v1.0.1 // indirect + github.com/cenkalti/backoff/v4 v4.3.0 // indirect + github.com/cespare/xxhash/v2 v2.3.0 // indirect + github.com/go-logr/logr v1.4.2 // indirect + github.com/go-logr/stdr v1.2.2 // indirect + github.com/google/uuid v1.6.0 // indirect + github.com/grpc-ecosystem/grpc-gateway/v2 v2.22.0 // indirect + github.com/klauspost/compress v1.17.9 // indirect + github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect + github.com/prometheus/client_model v0.6.1 // indirect + github.com/prometheus/common v0.59.1 // indirect + github.com/prometheus/procfs v0.15.1 // indirect + github.com/stoewer/go-strcase v1.3.0 // indirect + go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.48.0 // indirect + go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.30.0 // indirect + go.opentelemetry.io/otel/metric v1.30.0 // indirect + go.opentelemetry.io/proto/otlp v1.3.1 // indirect + golang.org/x/net v0.29.0 // indirect + golang.org/x/sys v0.25.0 // indirect + golang.org/x/text v0.18.0 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20240903143218-8af14fe29dc1 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240903143218-8af14fe29dc1 // indirect + google.golang.org/protobuf v1.34.2 // indirect +) diff --git a/examples/opentelemetry/go.sum b/examples/opentelemetry/go.sum new file mode 100644 index 0000000..a02c9b5 --- /dev/null +++ b/examples/opentelemetry/go.sum @@ -0,0 +1,163 @@ +cloud.google.com/go/compute v1.23.3 h1:6sVlXXBmbd7jNX0Ipq0trII3e4n1/MsADLK6a+aiVlk= +cloud.google.com/go/compute/metadata v0.3.0 h1:Tz+eQXMEqDIKRsmY3cHTL6FVaynIjX2QxYC4trgAKZc= +cloud.google.com/go/compute/metadata v0.3.0/go.mod h1:zFmK7XCadkQkj6TtorcaGlCW1hT1fIilQDwofLpJ20k= +github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78 h1:w+iIsaOQNcT7OZ575w+acHgRric5iCyQh+xv+KJ4HB8= +github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8= +github.com/GreptimeTeam/greptime-proto v0.7.0 h1:WHBjAu+NWDFcbZgW9kPtksxEKEAeqYemP1HY63QuO48= +github.com/GreptimeTeam/greptime-proto v0.7.0/go.mod h1:jk5XBR9qIbSBiDF2Gix1KALyIMCVktcpx91AayOWxmE= +github.com/GreptimeTeam/greptimedb-ingester-go v0.5.3-0.20240918162118-d3f1530a9887 h1:e7KbXTGuBjeaHOgOcmspFGz1bzCIZqKUA5npn92/HBA= +github.com/GreptimeTeam/greptimedb-ingester-go v0.5.3-0.20240918162118-d3f1530a9887/go.mod h1:NHTUHidUQLEX8JhdVninZA2SD49AKDfokZkKIIwMKJM= +github.com/Microsoft/go-winio v0.6.0 h1:slsWYD/zyx7lCXoZVlvQrj0hPTM1HI4+v1sIda2yDvg= +github.com/Microsoft/go-winio v0.6.0/go.mod h1:cTAf44im0RAYeL23bpB+fzCyDH2MJiz2BO69KH/soAE= +github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5 h1:TngWCqHvy9oXAN6lEVMRuU21PR1EtLVZJmdB18Gu3Rw= +github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5/go.mod h1:lmUJ/7eu/Q8D7ML55dXQrVaamCz2vxCfdQBasLZfHKk= +github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= +github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= +github.com/cenkalti/backoff/v4 v4.3.0 h1:MyRJ/UdXutAwSAT+s3wNd7MfTIcy71VQueUuFK343L8= +github.com/cenkalti/backoff/v4 v4.3.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= +github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= +github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cncf/xds/go v0.0.0-20240423153145-555b57ec207b h1:ga8SEFjZ60pxLcmhnThWgvH2wg8376yUJmPhEH4H3kw= +github.com/cncf/xds/go v0.0.0-20240423153145-555b57ec207b/go.mod h1:W+zGtBO5Y1IgJhy4+A9GOqVhqLpfZi+vwmdNXUehLA8= +github.com/containerd/continuity v0.3.0 h1:nisirsYROK15TAMVukJOUyGJjz4BNQJBVsNvAXZJ/eg= +github.com/containerd/continuity v0.3.0/go.mod h1:wJEAIwKOm/pBZuBd0JmeTvnLquTB1Ag8espWhkykbPM= +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/docker/cli v20.10.17+incompatible h1:eO2KS7ZFeov5UJeaDmIs1NFEDRf32PaqRpvoEkKBy5M= +github.com/docker/cli v20.10.17+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= +github.com/docker/docker v20.10.7+incompatible h1:Z6O9Nhsjv+ayUEeI1IojKbYcsGdgYSNqxe1s2MYzUhQ= +github.com/docker/docker v20.10.7+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/go-connections v0.4.0 h1:El9xVISelRB7BuFusrZozjnkIM5YnzCViNKohAFqRJQ= +github.com/docker/go-connections v0.4.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec= +github.com/docker/go-units v0.4.0 h1:3uh0PgVws3nIA0Q+MwDC8yjEPf9zjRfZZWXZYDct3Tw= +github.com/docker/go-units v0.4.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= +github.com/envoyproxy/protoc-gen-validate v1.0.4 h1:gVPz/FMfvh57HdSJQyvBtF00j8JU4zdyUgIUNhlgg0A= +github.com/envoyproxy/protoc-gen-validate v1.0.4/go.mod h1:qys6tmnRsYrQqIhm2bvKZH4Blx/1gTIZ2UKVY1M+Yew= +github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY= +github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= +github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= +github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= +github.com/go-sql-driver/mysql v1.7.0 h1:ueSltNNllEqE3qcWBTD0iQd3IpL/6U+mJxLkazJ7YPc= +github.com/go-sql-driver/mysql v1.7.0/go.mod h1:OXbVy3sEdcQ2Doequ6Z5BW6fXNQTmx+9S1MCJN5yJMI= +github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= +github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= +github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4= +github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ= +github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= +github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.22.0 h1:asbCHRVmodnJTuQ3qamDwqVOIjwqUPTYmYuemVOx+Ys= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.22.0/go.mod h1:ggCgvZ2r7uOoQjOyu2Y1NhHmEPPzzuhWgcza5M1Ji1I= +github.com/imdario/mergo v0.3.12 h1:b6R2BslTbIEToALKP7LxUvijTsNI9TAe80pLWN2g/HU= +github.com/imdario/mergo v0.3.12/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= +github.com/jinzhu/inflection v1.0.0 h1:K317FqzuhWc8YvSVlFMCCUb36O/S9MCKRDI7QkRKD/E= +github.com/jinzhu/inflection v1.0.0/go.mod h1:h+uFLlag+Qp1Va5pdKtLDYj+kHp5pxUVkryuEj+Srlc= +github.com/jinzhu/now v1.1.5 h1:/o9tlHleP7gOFmsnYNz3RGnqzefHA47wQpKrrdTIwXQ= +github.com/jinzhu/now v1.1.5/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8= +github.com/klauspost/compress v1.17.9 h1:6KIumPrER1LHsvBVuDa0r5xaG0Es51mhhB9BQB2qeMA= +github.com/klauspost/compress v1.17.9/go.mod h1:Di0epgTjJY877eYKx5yC51cX2A2Vl2ibi7bDH9ttBbw= +github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= +github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw= +github.com/mitchellh/mapstructure v1.4.1 h1:CpVNEelQCZBooIPDn+AR3NpivK/TIKU8bDxdASFVQag= +github.com/mitchellh/mapstructure v1.4.1/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/moby/term v0.0.0-20201216013528-df9cb8a40635 h1:rzf0wL0CHVc8CEsgyygG0Mn9CNCCPZqOPaz8RiiHYQk= +github.com/moby/term v0.0.0-20201216013528-df9cb8a40635/go.mod h1:FBS0z0QWA44HXygs7VXDUOGoN/1TV3RuWkLO04am3wc= +github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= +github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= +github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= +github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= +github.com/opencontainers/image-spec v1.0.2 h1:9yCKha/T5XdGtO0q9Q9a6T5NUCsTn/DrBg0D7ufOcFM= +github.com/opencontainers/image-spec v1.0.2/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= +github.com/opencontainers/runc v1.1.5 h1:L44KXEpKmfWDcS02aeGm8QNTFXTo2D+8MYGDIJ/GDEs= +github.com/opencontainers/runc v1.1.5/go.mod h1:1J5XiS+vdZ3wCyZybsuxXZWGrgSr8fFJHLXuG2PsnNg= +github.com/ory/dockertest/v3 v3.10.0 h1:4K3z2VMe8Woe++invjaTB7VRyQXQy5UY+loujO4aNE4= +github.com/ory/dockertest/v3 v3.10.0/go.mod h1:nr57ZbRWMqfsdGdFNLHz5jjNdDb7VVFnzAeW1n5N1Lg= +github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= +github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/prometheus/client_golang v1.20.4 h1:Tgh3Yr67PaOv/uTqloMsCEdeuFTatm5zIq5+qNN23vI= +github.com/prometheus/client_golang v1.20.4/go.mod h1:PIEt8X02hGcP8JWbeHyeZ53Y/jReSnHgO035n//V5WE= +github.com/prometheus/client_model v0.6.1 h1:ZKSh/rekM+n3CeS952MLRAdFwIKqeY8b62p8ais2e9E= +github.com/prometheus/client_model v0.6.1/go.mod h1:OrxVMOVHjw3lKMa8+x6HeMGkHMQyHDk9E3jmP2AmGiY= +github.com/prometheus/common v0.59.1 h1:LXb1quJHWm1P6wq/U824uxYi4Sg0oGvNeUm1z5dJoX0= +github.com/prometheus/common v0.59.1/go.mod h1:GpWM7dewqmVYcd7SmRaiWVe9SSqjf0UrwnYnpEZNuT0= +github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc= +github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk= +github.com/sirupsen/logrus v1.8.1 h1:dJKuHgqk1NNQlqoA6BTlM1Wf9DOH3NBjQyu0h9+AZZE= +github.com/sirupsen/logrus v1.8.1/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= +github.com/stoewer/go-strcase v1.3.0 h1:g0eASXYtp+yvN9fK8sH94oCIk0fau9uV1/ZdJ0AVEzs= +github.com/stoewer/go-strcase v1.3.0/go.mod h1:fAH5hQ5pehh+j3nZfvwdk2RgEgQjAoM8wodgtPmh1xo= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= +github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= +github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= +github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= +github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= +github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= +github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f h1:J9EGpcZtP0E/raorCMxlFGSTBrsSlaDGf3jU/qvAE2c= +github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= +github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 h1:EzJWgHovont7NscjpAxXsDA8S8BMYve8Y5+7cuRE7R0= +github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ= +github.com/xeipuuv/gojsonschema v1.2.0 h1:LhYJRs+L4fBtjZUfuSZIKGeVu0QRy8e5Xi7D17UxZ74= +github.com/xeipuuv/gojsonschema v1.2.0/go.mod h1:anYRn/JVcOK2ZgGU+IjEV4nwlhoK5sQluxsYJ78Id3Y= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.48.0 h1:P+/g8GpuJGYbOp2tAdKrIPUX9JO02q8Q0YNlHolpibA= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.48.0/go.mod h1:tIKj3DbO8N9Y2xo52og3irLsPI4GW02DSMtrVgNMgxg= +go.opentelemetry.io/otel v1.30.0 h1:F2t8sK4qf1fAmY9ua4ohFS/K+FUuOPemHUIXHtktrts= +go.opentelemetry.io/otel v1.30.0/go.mod h1:tFw4Br9b7fOS+uEao81PJjVMjW/5fvNCbpsDIXqP0pc= +go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.30.0 h1:WypxHH02KX2poqqbaadmkMYalGyy/vil4HE4PM4nRJc= +go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.30.0/go.mod h1:U79SV99vtvGSEBeeHnpgGJfTsnsdkWLpPN/CcHAzBSI= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.30.0 h1:lsInsfvhVIfOI6qHVyysXMNDnjO9Npvl7tlDPJFBVd4= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.30.0/go.mod h1:KQsVNh4OjgjTG0G6EiNi1jVpnaeeKsKMRwbLN+f1+8M= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.30.0 h1:m0yTiGDLUvVYaTFbAvCkVYIYcvwKt3G7OLoN77NUs/8= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.30.0/go.mod h1:wBQbT4UekBfegL2nx0Xk1vBcnzyBPsIVm9hRG4fYcr4= +go.opentelemetry.io/otel/exporters/prometheus v0.52.0 h1:kmU3H0b9ufFSi8IQCcxack+sWUblKkFbqWYs6YiACGQ= +go.opentelemetry.io/otel/exporters/prometheus v0.52.0/go.mod h1:+wsAp2+JhuGXX7YRkjlkx6hyWY3ogFPfNA4x3nyiAh0= +go.opentelemetry.io/otel/metric v1.30.0 h1:4xNulvn9gjzo4hjg+wzIKG7iNFEaBMX00Qd4QIZs7+w= +go.opentelemetry.io/otel/metric v1.30.0/go.mod h1:aXTfST94tswhWEb+5QjlSqG+cZlmyXy/u8jFpor3WqQ= +go.opentelemetry.io/otel/sdk v1.30.0 h1:cHdik6irO49R5IysVhdn8oaiR9m8XluDaJAs4DfOrYE= +go.opentelemetry.io/otel/sdk v1.30.0/go.mod h1:p14X4Ok8S+sygzblytT1nqG98QG2KYKv++HE0LY/mhg= +go.opentelemetry.io/otel/sdk/metric v1.30.0 h1:QJLT8Pe11jyHBHfSAgYH7kEmT24eX792jZO1bo4BXkM= +go.opentelemetry.io/otel/sdk/metric v1.30.0/go.mod h1:waS6P3YqFNzeP01kuo/MBBYqaoBJl7efRQHOaydhy1Y= +go.opentelemetry.io/otel/trace v1.30.0 h1:7UBkkYzeg3C7kQX8VAidWh2biiQbtAKjyIML8dQ9wmc= +go.opentelemetry.io/otel/trace v1.30.0/go.mod h1:5EyKqTzzmyqB9bwtCCq6pDLktPK6fmGf/Dph+8VI02o= +go.opentelemetry.io/proto/otlp v1.3.1 h1:TrMUixzpM0yuc/znrFTP9MMRh8trP93mkCiDVeXrui0= +go.opentelemetry.io/proto/otlp v1.3.1/go.mod h1:0X1WI4de4ZsLrrJNLAQbFeLCm3T7yBkR0XqQ7niQU+8= +go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= +go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= +golang.org/x/mod v0.17.0 h1:zY54UmvipHiNd+pm+m0x9KhZ9hl1/7QNMyxXbc6ICqA= +golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/net v0.29.0 h1:5ORfpBpCs4HzDYoodCDBbwHzdR5UrLBZ3sOnUJmFoHo= +golang.org/x/net v0.29.0/go.mod h1:gLkgy8jTGERgjzMic6DS9+SP0ajcu6Xu3Orq/SpETg0= +golang.org/x/oauth2 v0.22.0 h1:BzDx2FehcG7jJwgWLELCdmLuxk2i+x9UDpSiss2u0ZA= +golang.org/x/oauth2 v0.22.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= +golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= +golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34= +golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224= +golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= +golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d h1:vU5i/LfpvrRCpgM/VPfJLg5KjxD3E+hfT1SH+d9zLwg= +golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk= +google.golang.org/genproto/googleapis/api v0.0.0-20240903143218-8af14fe29dc1 h1:hjSy6tcFQZ171igDaN5QHOw2n6vx40juYbC/x67CEhc= +google.golang.org/genproto/googleapis/api v0.0.0-20240903143218-8af14fe29dc1/go.mod h1:qpvKtACPCQhAdu3PyQgV4l3LMXZEtft7y8QcarRsp9I= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240903143218-8af14fe29dc1 h1:pPJltXNxVzT4pK9yD8vR9X75DaWYYmLGMsEvBfFQZzQ= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240903143218-8af14fe29dc1/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU= +google.golang.org/grpc v1.66.2 h1:3QdXkuq3Bkh7w+ywLdLvM56cmGvQHUMZpiCzt6Rqaoo= +google.golang.org/grpc v1.66.2/go.mod h1:s3/l6xSSCURdVfAnL+TqCNMyTDAGN6+lZeVxnZR128Y= +google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= +google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= +gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gorm.io/driver/mysql v1.5.2 h1:QC2HRskSE75wBuOxe0+iCkyJZ+RqpudsQtqkp+IMuXs= +gorm.io/driver/mysql v1.5.2/go.mod h1:pQLhh1Ut/WUAySdTHwBpBv6+JKcj+ua4ZFx1QQTBzb8= +gorm.io/gorm v1.25.6 h1:V92+vVda1wEISSOMtodHVRcUIOPYa2tgQtyF+DfFx+A= +gorm.io/gorm v1.25.6/go.mod h1:hbnx/Oo0ChWMn1BIhpy1oYozzpM15i4YPuHDmfYtwg8= diff --git a/examples/opentelemetry/main.go b/examples/opentelemetry/main.go new file mode 100644 index 0000000..171e76c --- /dev/null +++ b/examples/opentelemetry/main.go @@ -0,0 +1,285 @@ +// Copyright 2024 Greptime Team +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package main + +import ( + "context" + "fmt" + "log" + "net/http" + "os" + "os/signal" + "time" + + "github.com/prometheus/client_golang/prometheus/promhttp" + "go.opentelemetry.io/otel" + "go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc" + "go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc" + otelprom "go.opentelemetry.io/otel/exporters/prometheus" + "go.opentelemetry.io/otel/propagation" + "go.opentelemetry.io/otel/sdk/metric" + sdkmetric "go.opentelemetry.io/otel/sdk/metric" + "go.opentelemetry.io/otel/sdk/resource" + sdktrace "go.opentelemetry.io/otel/sdk/trace" + semconv "go.opentelemetry.io/otel/semconv/v1.26.0" + "go.opentelemetry.io/otel/trace" + "google.golang.org/grpc" + "google.golang.org/grpc/credentials/insecure" + + greptime "github.com/GreptimeTeam/greptimedb-ingester-go" + "github.com/GreptimeTeam/greptimedb-ingester-go/table" + "github.com/GreptimeTeam/greptimedb-ingester-go/table/types" +) + +var ( + client *greptime.Client + serviceName = semconv.ServiceNameKey.String("test-otel") + + // It connects the OpenTelemetry Collector through local gRPC connection. + // You may replace `localhost:4317` with your endpoint. + tracingEndpoint = "localhost:4317" + + // The GreptimeDB address. + host = "127.0.0.1" + + // The database name. + database = "public" +) + +func main() { + log.Printf("Waiting for connection...") + + ctx, cancel := signal.NotifyContext(context.Background(), os.Interrupt) + defer cancel() + + conn, err := initConn() + if err != nil { + log.Fatal(err) + return + } + + res, err := resource.New(ctx, + resource.WithAttributes( + // The service name used to display traces in backends + serviceName, + ), + ) + if err != nil { + log.Fatal(err) + return + } + + tracerProvider, err := initTracerProvider(ctx, res, conn) + if err != nil { + log.Fatal(err) + return + } + + exporter, err := otelprom.New(otelprom.WithNamespace("greptime")) + if err != nil { + log.Fatal(err) + return + } + meterProvider := metric.NewMeterProvider( + metric.WithReader(exporter), + ) + + err = initMeterProvider(ctx, res, conn) + if err != nil { + log.Fatal(err) + return + } + + // Start the prometheus HTTP server and pass the exporter Collector to it + go serveMetrics() + + cfg := greptime.NewConfig(host).WithDatabase(database). + WithTraceProvider(tracerProvider).WithTracesEnabled(true). + WithMeterProvider(meterProvider).WithMetricsEnabled(true) + + cli_, err := greptime.NewClient(cfg) + if err != nil { + log.Fatal(err) + return + } + client = cli_ + + data := initData() + write(data[1]) + + log.Printf("Sleep 30s...") + time.Sleep(30 * time.Second) + log.Printf("Done!") +} + +// Initialize a gRPC connection to be used by both the tracer and meter +// providers. +func initConn() (*grpc.ClientConn, error) { + // It connects the OpenTelemetry Collector through local gRPC connection. + // You may replace `localhost:4317` with your endpoint. + conn, err := grpc.NewClient(tracingEndpoint, + // Note the use of insecure transport here. TLS is recommended in production. + grpc.WithTransportCredentials(insecure.NewCredentials()), + ) + if err != nil { + return nil, fmt.Errorf("failed to create gRPC connection to collector: %w", err) + } + + return conn, err +} + +// Initializes an OTLP exporter, and configures the corresponding trace provider. +func initTracerProvider(ctx context.Context, res *resource.Resource, conn *grpc.ClientConn) (trace.TracerProvider, error) { + // Set up a trace exporter + traceExporter, err := otlptracegrpc.New(ctx, otlptracegrpc.WithGRPCConn(conn)) + if err != nil { + return nil, fmt.Errorf("failed to create trace exporter: %w", err) + } + + // Register the trace exporter with a TracerProvider, using a batch + // span processor to aggregate spans before export. + bsp := sdktrace.NewBatchSpanProcessor(traceExporter) + tracerProvider := sdktrace.NewTracerProvider( + sdktrace.WithSampler(sdktrace.AlwaysSample()), + sdktrace.WithResource(res), + sdktrace.WithSpanProcessor(bsp), + ) + otel.SetTracerProvider(tracerProvider) + + // Set global propagator to tracecontext (the default is no-op). + otel.SetTextMapPropagator(propagation.TraceContext{}) + + // Shutdown will flush any remaining spans and shut down the exporter. + return tracerProvider, nil +} + +// Initializes an OTLP exporter, and configures the corresponding meter provider. +func initMeterProvider(ctx context.Context, res *resource.Resource, conn *grpc.ClientConn) error { + metricExporter, err := otlpmetricgrpc.New(ctx, otlpmetricgrpc.WithGRPCConn(conn)) + if err != nil { + return fmt.Errorf("failed to create metrics exporter: %w", err) + } + + meterProvider := sdkmetric.NewMeterProvider( + sdkmetric.WithReader(sdkmetric.NewPeriodicReader(metricExporter)), + sdkmetric.WithResource(res), + ) + otel.SetMeterProvider(meterProvider) + + return nil +} + +func serveMetrics() { + log.Printf("serving metrics at localhost:2233/metrics") + http.Handle("/metrics", promhttp.Handler()) + err := http.ListenAndServe(":2233", nil) //nolint:gosec // Ignoring G114: Use of net/http serve function that has no support for setting timeouts. + if err != nil { + fmt.Printf("error serving http: %v", err) + return + } +} + +func initData() []*table.Table { + + time1 := time.Now() + time2 := time.Now() + time3 := time.Now() + + itbl, err := table.New("monitors_with_schema") + if err != nil { + log.Println(err) + } + // add column at first. This is to define the schema of the table. + if err := itbl.AddTagColumn("id", types.INT64); err != nil { + log.Println(err) + } + if err := itbl.AddFieldColumn("host", types.STRING); err != nil { + log.Println(err) + } + if err := itbl.AddFieldColumn("temperature", types.FLOAT); err != nil { + log.Println(err) + } + if err := itbl.AddTimestampColumn("timestamp", types.TIMESTAMP_MICROSECOND); err != nil { + log.Println(err) + } + + if err := itbl.AddRow(1, "hello", 1.1, time1); err != nil { + log.Println(err) + } + if err := itbl.AddRow(2, "hello", 2.2, time2); err != nil { + log.Println(err) + } + if err := itbl.AddRow(3, "hello", 3.3, time3); err != nil { + log.Println(err) + } + + utbl, err := table.New("monitors_with_schema") + if err != nil { + log.Println(err) + } + + // add column at first. This is to define the schema of the table. + if err := utbl.AddTagColumn("id", types.INT64); err != nil { + log.Println(err) + } + if err := utbl.AddFieldColumn("host", types.STRING); err != nil { + log.Println(err) + } + if err := utbl.AddFieldColumn("temperature", types.FLOAT); err != nil { + log.Println(err) + } + if err := utbl.AddTimestampColumn("timestamp", types.TIMESTAMP_MICROSECOND); err != nil { + log.Println(err) + } + + if err := utbl.AddRow(1, "hello", 1.2, time1); err != nil { + log.Println(err) + } + + dtbl, err := table.New("monitors_with_schema") + if err != nil { + log.Println(err) + } + + // add column at first. This is to define the schema of the table. + if err := dtbl.AddTagColumn("id", types.INT64); err != nil { + log.Println(err) + } + if err := dtbl.AddFieldColumn("host", types.STRING); err != nil { + log.Println(err) + } + if err := dtbl.AddFieldColumn("temperature", types.FLOAT); err != nil { + log.Println(err) + } + if err := dtbl.AddTimestampColumn("timestamp", types.TIMESTAMP_MICROSECOND); err != nil { + log.Println(err) + } + + if err := dtbl.AddRow(3, "hello", 3.3, time3); err != nil { + log.Println(err) + } + + return []*table.Table{itbl, utbl, dtbl} +} + +func write(data *table.Table) { + ctx, cancel := context.WithTimeout(context.Background(), time.Second*3) + defer cancel() + resp, err := client.Write(ctx, data) + if err != nil { + log.Println(err) + } + log.Printf("affected rows: %d\n", resp.GetAffectedRows().GetValue()) +} diff --git a/images/tracing.png b/images/tracing.png new file mode 100644 index 0000000000000000000000000000000000000000..ab7af209f2abf75b0a668d5716be49427249fb4f GIT binary patch literal 153752 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%0DT%;eGjZz*0$X{p9s%4 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 Date: Thu, 19 Sep 2024 12:15:29 +0800 Subject: [PATCH 2/7] chore: delete unuse code --- examples/opentelemetry/main.go | 2 -- 1 file changed, 2 deletions(-) diff --git a/examples/opentelemetry/main.go b/examples/opentelemetry/main.go index 171e76c..382e116 100644 --- a/examples/opentelemetry/main.go +++ b/examples/opentelemetry/main.go @@ -127,8 +127,6 @@ func main() { // Initialize a gRPC connection to be used by both the tracer and meter // providers. func initConn() (*grpc.ClientConn, error) { - // It connects the OpenTelemetry Collector through local gRPC connection. - // You may replace `localhost:4317` with your endpoint. conn, err := grpc.NewClient(tracingEndpoint, // Note the use of insecure transport here. TLS is recommended in production. grpc.WithTransportCredentials(insecure.NewCredentials()), From 3117dc546443ba90ff7e43dc66da06c603eb01eb Mon Sep 17 00:00:00 2001 From: liyang Date: Sat, 21 Sep 2024 01:38:45 +0800 Subject: [PATCH 3/7] chore: change opentelemetry readme --- examples/opentelemetry/README.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/examples/opentelemetry/README.md b/examples/opentelemetry/README.md index 56ab74f..6c0190e 100644 --- a/examples/opentelemetry/README.md +++ b/examples/opentelemetry/README.md @@ -42,7 +42,15 @@ kubectl port-forward svc/jaeger-collector -n default 4317:4317 > jaeger.out & kubectl port-forward svc/jaeger-query -n default 16686:16686 > jaeger.out & ``` -## Running the Example +## Example +Enable opentelemetry in the configuration: +```go +cfg := greptime.NewConfig(host).WithDatabase(database). + WithTraceProvider(tracerProvider).WithTracesEnabled(true). + WithMeterProvider(meterProvider).WithMetricsEnabled(true) +``` + +Running the example: ```go go run main.go ``` From c2cce92b7424285fd71196515056141b26bdfa9c Mon Sep 17 00:00:00 2001 From: liyang Date: Mon, 23 Sep 2024 02:04:07 +0800 Subject: [PATCH 4/7] chore: install jaeger using docker --- examples/opentelemetry/README.md | 76 +++++++++++++---------------- images/{tracing.png => jaeger.png} | Bin images/prometheus.png | Bin 0 -> 48412 bytes 3 files changed, 33 insertions(+), 43 deletions(-) rename images/{tracing.png => jaeger.png} (100%) create mode 100644 images/prometheus.png diff --git a/examples/opentelemetry/README.md b/examples/opentelemetry/README.md index 6c0190e..a356de7 100644 --- a/examples/opentelemetry/README.md +++ b/examples/opentelemetry/README.md @@ -1,47 +1,44 @@ # Enable Opentelemetry ## Install Jaeger -Use [Jaeger](https://github.com/jaegertracing/helm-charts/tree/main/charts/jaeger) as the backend storage for tracing, save the following configuration to **jaeger-values.yaml** file: -```yaml -provisionDataStore: - cassandra: false - -storage: - type: memory - -agent: - enabled: false - -collector: - enabled: false - -query: - enabled: false - -allInOne: - enabled: true - - extraEnv: - - name: COLLECTOR_OTLP_ENABLED - value: "true" +Use [Jaeger](https://github.com/jaegertracing/jaeger) as the backend storage for tracing: ``` - -Use [helm](https://helm.sh/) command to install: -``` -helm repo add jaegertracing https://jaegertracing.github.io/helm-charts -``` -``` -helm install jaeger jaegertracing/jaeger --values jaeger-values.yaml -n default +docker run --rm --name jaeger \ + -e COLLECTOR_ZIPKIN_HOST_PORT=:9411 \ + -p 6831:6831/udp \ + -p 6832:6832/udp \ + -p 5778:5778 \ + -p 16686:16686 \ + -p 4317:4317 \ + -p 4318:4318 \ + -p 14250:14250 \ + -p 14268:14268 \ + -p 14269:14269 \ + -p 9411:9411 \ + jaegertracing/all-in-one ``` -Expose the jaeger port to the localhost: +## Install Prometheus +Write the [Prometheus](https://prometheus.io/) configuration file and save it as **prometheus.yml**: ``` -kubectl port-forward svc/jaeger-collector -n default 4317:4317 > jaeger.out & +global: + scrape_interval: 10s + +scrape_configs: + - job_name: greptimedb-ingester-go + static_configs: + - targets: ['host.docker.internal:2233'] ``` + +Run prometheus: ``` -kubectl port-forward svc/jaeger-query -n default 16686:16686 > jaeger.out & +docker run \ + -p 9090:9090 \ + -v $(pwd)/prometheus.yml:/etc/prometheus/prometheus.yml \ + prom/prometheus ``` + ## Example Enable opentelemetry in the configuration: ```go @@ -66,18 +63,11 @@ Output: ``` ## View metrics -We can use `curl localhost:2233/metrics` to view the metrics data. Also, configure [Prometheus](https://prometheus.io/) to scrape it as follows: -``` -global: - scrape_interval: 10s +We can use `curl localhost:2233/metrics` to view the metrics data. Also, Open the address http://localhost:9090/ to view metrics data. -scrape_configs: - - job_name: greptimedb-ingester-go - static_configs: - - targets: ['localhost:2233'] -``` +![prometheus.png](../../images/prometheus.png) ## View tracing Open the address http://localhost:16686/ to view tracing data. -![tracing.png](../../images/tracing.png) +![jaeger.png](../../images/jaeger.png) diff --git a/images/tracing.png b/images/jaeger.png similarity index 100% rename from images/tracing.png rename to images/jaeger.png diff --git a/images/prometheus.png b/images/prometheus.png new file mode 100644 index 0000000000000000000000000000000000000000..e83dea178e6d75663714e83a5baab3a5cf069d76 GIT binary patch literal 48412 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%0D=4{mttX_Qcme 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� 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 literal 0 HcmV?d00001 From 8da84fe25c5193c54c21afad09f5da72cdaad3a4 Mon Sep 17 00:00:00 2001 From: liyang Date: Mon, 23 Sep 2024 02:08:19 +0800 Subject: [PATCH 5/7] chore: change image --- images/prometheus.png | Bin 48412 -> 44733 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/images/prometheus.png b/images/prometheus.png index e83dea178e6d75663714e83a5baab3a5cf069d76..b023cc4f64058a9a660e1cac350714a471053264 100644 GIT binary patch literal 44733 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%0D=4{mttX_Qcme zD55fvzo-5Jzco6y^q3Q`=GyztPOYb`XO=>KY zagQO4g50ZQOdMc^{u~NLQ(v=?X1+yHZS#M+wPr0e4`J5;aFPrUo0T8mf-|Z*cP`8P zKLv9CKShoI&&`6b14#RSA9tC5UmDfnlU(+0vH{4=^H9A)`u@btV6i2Ki| z_YtSlfj^^+V_KK~3~nZ$j${8ba=-fjyUn=RQC`H7fXO{3jXttys3}k`^5=7Ms25M- z;i$)XOx{UGhrQa|x7cYjUan2*C>iZNY;8R7=a&j0l5x~S^Vn6_CG~r-SybKsh*y0j zCTfVP7F^c~Mr2bGRK_#7gblCn4Bi6=E>^m%7IUx%lJld7Vhc1ypnr(`R5{-WG%5gw zZyU=zYJ_bJ)pg{={*QGJ{Rh@0g9q}vFlFiWf#l1z0W&R^NmWpqJ+4$Yhx()z^Jd~O zin&FDimLcL=HL;FbNjROSGJEm(L+jJq!oc^$z`LN|5??@8IB7E(Kb~^)}Y8pE|Oz>aMD8%vX8Y6^!3qmn@vd z>Z4k>p6o%@S2Yf>xs_8;H&45@hROZEA@fRJM0|YRon+c7B_VBRb275LvP;@cU0i-% zbAOi`I?z?ixXL>PN5JQA_>N^kztAbTzlHuB_$mAz;s}b?$h4P12DbQrRr-&)56Y|6Au9P>fS-TFaJA7b0@chzIzTCO- zx7h{ptIWJKMVM2Nt$ymIJ8~Ry&?I|l?(yOkn z&!x)Q$aavpoMNBw1R828HFssuqnO@{4<@%NWnVmE6d8>66^@PSP8tVR10H{IzPH$* zCyv~iPQfx5Uf>Tcqy1q%IJ2^ct4ZhJ8@@wi##V@$-mPA#*Do9D#v7mo z?N=7U|F_ZpKO21lT)Ic!3CJp5^a(EW<{-?k>E-su>v4qWvb8u;z=*J01B8N!PFq?W$EYf5 zqXELGp9uzp1vp`iF8;C&R=o6fRYp42x)!c(s6*UPAa}5 z?}o|Q5Bxx)pBP_MTa#&66@HP9uFP6|{Ga3Agyb4V4gFR!MVeef>!$*!^ddL_peiL@ zTQ2BB|5j2Bp{`wFrwJC;poYkO_!bqnZ=YwE8$>XVFUQ%FQ_C%YPWvi# zoU;VU`ko3h@tp9Cf{$Fe!1o=b&#Vw|w_~dYf9J(=@)V2wvq7 zc4Os##*+04@VCmrq0YsL`96b%x}n{f5Qq|E5J;rSs>UAgDWPO|`S}OVchZ?^9%~va zfF8V)pLi_VGT~kVIT4}I2iuvGfjCI{m_=_EI!L4~tvNkoei-w0&9j$Wvp z3{^41YE1>$WfIKX#n=-1)|L^MY1dc$cjldHLIGm_>~5BwU7C@>XXjp+*x`I3p5exg~6 z@~y8CMvJ*@Tg4wO+!(W=edp2|N^NS7*!&RyVD<9op_q6<(lJ5je85%Xm7Os%c3fc4 zCm%_83J@W76%QRfCpM%JT*MEF+JvG+&3V0|kp;8yk;w0FKKc%?&0%|fUlVJ;37yL4 z?IOE-)ryMD%L3b;kxf?*Ug5G@KRDjFP9J>bwyW6+%NuFn{`lw9aw7XEl4xn~QFIr{ z+>AO1Xs_0)@R%l}gcnLGJ|nj21sP?h1MJLUlj4~wegTLGMtZpy(s`&d4{Kbc7QFmK z|856{IibGQ-9Y;SNTU$6D93rnY3{B{cgEGcF?fd6fY?yp%lw|;g>ipmUQn$W%_t{;kg(*uJ3;#j+#E!Ae{fWk% z)#CsCJj}r62rBF$k(XEV8h>^093Y^tE&d2RTQ6wjYMemvzUutzfb_3Q=6T$La`q?W zdHyWWt1zM*r(|AgO|}2PO3J(*P}#8j^7IOz0s~2jjeQzQGs0V|t%z&8j*frkuw4Oi z-~SW)YLWlXeZ;5AP846jmB&A$ZEAE=$AoYL2iQ&x{o}b-^D%y|wUd9x4TmPbIH=b8 zX9arI-hlqRxm(7;_VB0HZy&Z-7xcSg!%2-Xe1sf)MO%>V$n}4`RG-8DxbkSEzRLC1 zua<15ew^fS!r9iejE9lOSC%_od;tn5xKI{LL7z#<_7N?mMh8BF|=Hk-UOoN1(?@^YTG6_Vy;LYZkn9 zRrZhnIc|IRmu|cD)Ibx#{N|zZ+8b<759oiCGAZmPzX0@v#}Nh-q|&71lDfE*Z5Ky39P0$q)J08WX#wY{OC99j-2Va9O#SB z>^8760_>P#Y8Z-5!3gkWJ!hT7a!xDX#bB*tz(>RT**G1~Xt%HuY+t|T7y-$6x3~nf*|xtTk2(_xl)EVT2o$%8aC|HU z;uhe%BgZj_qX1_1;UwEbNo`O(tI1po6h9<^=KAL#Pv?IJBh-Uhmo~X=*n#tg56S!| zAj#kbLXm3j!>A#7ZvkLksv}bJpK!!o6JT-gWf0y8S78S5A01m7_0Lv0JAmZeY`FRV zZj%Kc5OYM7_9edT)I6(=uXVeepBDO~wiOnC_n)wddgPyTvChP0J=r(inr~PizmeuZ zEkI=KM1`-!q$#p00$Rw81oTTFqtUDxm^?YOu(y$s2WRxESuhq~D+;h-pmWIK&0g?5Ia*J}vbuLvZEDZf^ADjxs*c#eSOZzZt+gP6Oc+02 z#@}q)TE8nX?V^*z5mZNNIoGZD{*?> zzA9kmyoxh1-gjVLZnXq{3qx9tj>%i6Pes*z@m2O4UaBo!Kg`Ba_x0!8+`ub%q!-W1#jr3Ve-ns$DunNcP5o= zs@6Y;z+Bc~ehwC;p9-|RPc^-edPrBw7Lp&$0sw7?@EL07K4E^ABT1;K@CtNiQQktD zR=2^*9YB#di%QVk(thS*1H8*~Ub=H?luu=rFOm&OLM5-1mw4^zaVxIR7`>51@BBwH z?Kw~da{gR5zGoPOE3PwjKn)SjLR!n)k0uM`y3;M1Cyuz%0ceSfy1T=zO?q|${~Cc< zCXdNyg@-tfAjyvaIsxdEh4(!MgAy1Nj6L;AtE9=C+uAEd@>TkkiWgbTHLiXN; z@8yvmT((~;qE*40b+`7SzNfehLXHie%uzb?7xFi4ZdOGNWiapKl!obX%OYeaSwI3Z=B= zn&Y-JgliZ;on0yXbSSKz%W0i)i0$V7C){BaM&zP9PlEZ#tG%#i zRrlg_5oFhd7vl`5UIQ!IncTlUp$&mXRd^IQp4TD@-e>pjSNd)cG6hz5!d8!bgJCS?isR^_RqLFpnHoZ{R;#X~+zkupu*C z{4i-}`DzX7qzTeI>3<6sX&Ux~^^p$ok6?W>2Ok4vOuvk= zRLl;z{2kR>c#$O)Hw$gdVuL5hQNHL}QN_+9vB_)Rx%^d6;>Ga^{*IdKT z=yF~wM7ix8bK&@2JzaG7$IorcP7lMb4Ol@}NZAA2y#a)r%~Ut$j9n`|-AdlfS8A*Q zim+Mzp0<+YNFouWHOaTSJrsQeFvp$JN`|TBG{cs2^p*2n)qJelp${}>oX$Ir!UHZHgBx` zeb&2%8iD#Us9CQHIp#$2GbBn?-*3p8j2bezi=e1b?_npgtzVGsT2t@0lAIZt7uYc5 z=+79wn)~sVXXET_RLP@H8gq+%R5hsu5U5l#%}n1+$}6b*$$i0c=;BDR)Q8Nft6we$ zYqoSDyX7BeVVdvK;?2*JZ6dH2k3PHw)he+EYkw;xmYxs}0AD#3Z5gg$0TgBWn0iO@ zIJtGf33kCjH-eyqHwL&!g71DSg{crRaKT#EE9Z>?)AV4k(ZRbWY-bdN~8PP4!f%b@O|p3=Du&*xMn|Lwc#F8{d^LQM#r2INEo)8CozDvi&}MZ;r%5*YHaD*5_7t zlHk}0=n#_|_PZ|hI4j#k?k7@jVueY8y(Nk|jfPLBTft!?<`SDCS4`cuGcsGvH+5)y zR8}UCDLi*_SxM>f#^KtBZLKMqFYNV#H3p>{C4gEbd*?92!eAI|l`!oh&c>GGx2U4! z-OcRHet(ANy#C&1#r`-e){m7pdIdAGdD|`4FMNgJy+7n9afe~QmkH_Wq@?NM$;bkc z^k1kFSvSb&>up$`&%T%64w_|%d$R~`n3>g2Iv!D@saUSElBqdR9z0oM!P;1%wAQiK zh3dzJ5(+m0_L_e_>#Wqca#k}|L#d|wdgG;?`FdVfqnc*uS;A$WcYEJil%V|srFr$) zDn!`N?431w`^HP3JLUs%ef9Jt*mv?n@aM2;mH$9d4=RwwQ}o1ZPy&hC~3s{0M}JQ>qM^?CL@v%RJ-j#$>mKCyZK&I%xbiMPBtP$ zW^;MiW*ChnahxdP4YMZZQ+4Ks(~bw))Sg>x0ji7|XA03uW-sx zf3)_d<+Cz+rn0lS3plNO`_tOTJFSIOK`K9DeWlyO(?K8H;`uR@yzdy|n!e&KfZ=lL zv6?L>eNt)w(!1Y%htLp$TMj!)urj5-Atf_el5kf(g8cDwBD<@nd0fHG-h+^s1UNHgXbzUCn!)VZYBiA68y-nOy#+tw4x`f{^WHv*ndBj!Of%Ul z*Ke)$i+l`w0*iqdHYdZmTw~@J6N(e=nsu3X0oO8bB&ICdp(lIk%kPq9y2Vo@ZBpLt zp*Sgz8TaiJ-n#8sokmX>BLgOkmoehr=Ot}<4uID$iKQ^$dwTH^U}keclsp}?f?kDN zE8UM_m8EilXt3>o{jd4zgL>cc&;k2WiOie_K3vPyybSRYkC^DwVc;Ap`6J}E41VA- z{|fAfLFl7;hy54}JCmL9y|2y#tcaS)^`F~zwzB$7Zl~HrE9n zyv|hrUb~1adwXy}{p52b;^07Qb{Kk%!?VFvd$h{A4@E3CLuv}*i>qVugTy>dewHr! z<13;p8v^ezivs-)R1(e$a1zWsU$wZo`wIgnm(4E-yn2l{A@>sQ` zd9*ejhf`CNU!PFoIj6tJ=-rp%$KS`u9JO$>&!mFYETe`#k#F!w$R2pKgE5qe%SwKA zVR*kYK79`b6TnM^NQFjL(%uTEXqJ7~^6m?yk<$6?u^8WH2$hxO)~g>~6{9Rse*4(= zCpLhib2cZE$r-B8Cq~nTVAI z+?^KxcZJ$BhH00}4;Mc;U04zO>SCM#*ZtBS4PJwFA1+s=Qbwp#_bAPbaS#5}cru?= zfi~iHG8;7jXAI^$*A##!{lnJ|XtkcF9!jjXhH)jwZyxOleH#c=RkRe#tym12_hm{3 zFDSO%{u~IlnJGXxyoA7UT0YGKZFT$VC46om6m4@uD!|JTC{*d!P7d zPjBvK?T;XI;Ai8Wlz#T+WR{TK5mejcm<)-rE!?(o-0w5QB; zw~7StB0!zj$s}tdnGFuPm}qPB$hd0%2Q<-oB-9h9(^L_%GP)iyT9TF|RF4L~DBEmU zNhdo1;%w6j(O7*HKZ~jxBswVskv*T)z$GEa!=B;lj;A=uY=o3;I7CB zw1#5&yvg36e7kWMk%K%kQamNQ7G-G=iP_6+zba@t8Y=f7<0egKP>*z*bax@KgG-&@ zJ5>r~m8D49uw|uBeH8=Q*(s{QF?~zUv`8SnR&A8%Kf(l$1?;tD60eZ*`}=DtldwBQb@o@+OFKmuAKLZo*3}geJA$Lch7F z(Y}K8-B`aAr}4{R5!1P}Hg1x)1szS)XsE|RCk%DLi#j{)1nh@rBP#o?;FS3;C`Wr_ z2x(!=F3pZYj?r4)6Yi1rdmn=%_}{8@n3E(X{v_=7D{qb|xAhF{d4`SlxiJAjnk1b~ z0Yvmf-6lTpGHwKCRjabP*0q(yE9dyt0w^%@sm}M+AE53z8kjIEQiMXRA%FpY zBTud9eZF@Qwq4Duki253X>>8p?1!j)?kIQZUa4*hSBh+JK!!H>*tAO?JE}h6syC@L zS{ux>Jha^W{Ko7^CX6}VAB#H!yC#lUFYES@YgRz3oGt;(-BBmpwrk@4e%Z{c7&rqr ziESzm9AVnXz>au=kT%3-cvxrzMs7#*k^yMb_+|lLGQ&Ri(f2;X^R@YzO?SCW8&!pO zcH$SiVGkq(n9)UTjbTwkrhh+sduP-JndHG9bc7V%=b#*4%C8LBLr7Drt(aWa= z^!MbdPR=>hth`G9*7z70wiMA5Z;wzzWK&<$a`ciak2`e{KVyCbVXy7Tx20X-WEKua zFUZ7URE=qbz3RIfkYE{;<3)te(R3>-w&T~pO>%JwUhK$|QQdjHS?Wu5Mq2QN|BF*Y_<@}3y}h19|L!=~w5WdRp%G+2VdSIhS-Af<0i z9E-4ND?3j>%)YF)E$f2J^h;hafmDgm-u*?K#VKSc!r=bA7ba4DC-Rqr62|jxYg~f7(}|KV1m<|#M3r|!i)o%6!|HN0GP~At zw%Q8a(Z3(sFuFhO)do-T^BBC!5u8d+8@WdN+Nz&C2ZpIGHe78x7wn*NK9J`@>p~^D zqV}H)7n9{QmG9!)DV=C~QZOfb)psr1O3Df{_Umsyi-#kt8^$a9p{v!8CZ553SLf&8 z+1u+v_uCGm5I#jbu9o$5eHNwH+hrm1l0lZCv4RmR2+Zl>%v~L z;w6z{6k@u#Ww4iM(-Sq6W5AVAK_8go`)CMHy5~2P&d;ebd?xScy#z6Vbl4>~nRM$i zous!_#aECtdWZ4Am3rL_hgns~YCu2PaOLh6iZW>i@=|iCfp9tG8DBKGayDH8fJhRa zP(4k(horMfSqVH&&7(NyrQ=R=y(M|NPe*7&jcW2vgN7g7UuheSmg&-p5$vCf?L4Pk zB+SdN8IGTjzZ7>IwI!$MidiV2!^A4M*y90ea6>x*PDeCAQWVTHcn$UqeEyAGF%%hBt(R zKW%9SfRKmenF-vk{-+2F!UMt9vf%ybKU zcj9%50a?fRuH$x|jRrKu%q?oPRn8so6Im?g@Ut>%psTgk`NV!$2+jryYhfPD7x~<2 z=luz=+8{r*g^*fuVjIWLLvuHWw&aRfi9K2&ug+-3Vl=kS@LX<|ROaP2nwNj?bSZ9i48U-vMH@*ZBHwos#Q+Zxy!N?N&n^^2F_MAlI!xl3KL206bh20GB^ zX&QQ$>nDTMS7$!&Kl_ZMYdq+~%*Nq<(6*qzzSnf8yp2~?zgc(I=8f?V(bsm-S> zm1YNkWcTLL0$2y22W7Hil;zjcZL)B#Om_0B{n;F(z6!Nvpt(QSb}`fLv~U?W$5TLn=fJFH(O* zM))Hn!V7!%E*pTn<>EL{r^o+$5pFby;C;hCjcoR&>}V~|d$eslk5Ag+a+Qly62R9B zAt?_=xArz|(y1Q!Wh>ma#U7KMcy`_UGx9EvyLE>+^cUhwfY8|vJ6Qkz!XfjRs-*&d z63{Oo^=tHf`aP!cmm963{QtWQg7{RwsWj%~J6%v)ySlnd^{1VT`TD9&XV=i$UR!M!lUB6zk7Ea8&b0=C| zXF70bG*Eu}=L2gHbMM7DO?9Oh_CnF%bFC*8y$G3Q&WzKV>NRgGT7KNx+Hr|Lg3{~y z(r(yepM3b2VCP6g48}U`Ed*B+sgzfN>x8`6V}rcJsC(>9BB92zaRlWVK4h`Z`6fxCp<(Ff ze!ZanroQ}oy5Z1j3^OOz@wrbvI|`_Ix?f|HU@dy(lkHvG z23$vF!bI@!Dj$d9OV5hf%o{h_f+6GJC`)8oas9`l(5yQK7C6XE68g*myV9?hjyVZD zerbX**y@wpMt_)4|9+0&w90gl%ZU!gRgFmS*neejud6{SIOC zjN3|m3DEgSqhS>ob*WoG&6la+abdX%R1UO$X*q@zBsATk11&-ca6P zMGnw%Oc6PW-`rGh{pNh`scrJCMtG}X5gL|q?7~}=fQBGFyO3Do}Y!*@=T9;?Z7P%g)DzxH(A0mH6m^Tw*LI?+m|OXvjYMmT!hAByq~kDk>(=`(tieA| zN-UYf!xiv~RrYHz?~}-E-x9w3uz^ySYffh1N1p7cU}m1@;NqdNb~6Gm0^lXvYh-Q_NQe2x`Zhi%Z*RouSX&wHak46Pabs= z2==u8mi^ioN1{4@08FCURjtS$gaEJ6B`+!epcU^MrTPa-wRPxK4gO&#@FSZ+d(}R& zV1Z9t9KqbU3GjtCXyfLog+Aa8eVkiXdb~e43mX`ecHM>zL{BY809aNTQo<>}U*DW* z*1<{5Wqq^el^;;5f<)N-U2r{4{Dx{M=TgaVIb+>%?)daqVKz1f2kS;$ilFItYRx^q z*ram~*egdb2aVz+D)OvLm8seKjNhl8@O*@fsZ?&SK}r&%EHpwWsE=*YUz;A9^B%6E zcY!CThz6ziN1MN9@ZmS-fm@YZBvLF96AZqzS!3rDMu~(JpLno&Elv*8c01K!FJ{s_ z@7gzLVh{&W+6A!zQqZXG_`&Vu12N+crp?AC2SNGqD-ywhE?L;gTKI<>dxM&3fA={0 z^H>*XrlVL55Oxk6lree6pm z&1HU7$Lb$VaH_E(-y3%o)C|$ebyz-%+x%I4{iNAbPjJ}tsE%9uNw_mZu?jUl!}VRm z(U+g2bJ-MaNe0f+1;jjOvu!KNX-h#oc4uXG5asc_M04yptY&fwImJ9nF z_cJ|^3wJ=_`!;P}%w;{&qxm*Bq4SG`DQM{v90sx@89Fs{2jsP`+D!p^?_S^4t^={s zJ}Fc?yVoERN;v>-|lXRvf_4%w{@cxE^%6Z3>q`mW7zpRK8j;WkeJacz0s;vjcC)KMXF^CyUQnu-*F8m&mg-z z`?y&5EgpJO`m(Na$pYqr8tm0L2riL}ySAZc#w}Ue(~7uU+F1)YUYzctg4!aRMzR_w zJ3^L=W<}cTcuGEQ@rx9BLPr*mO+&w6x)Ymgy=$8y!{(}cztp|Nxhmy{47A{eAv_&Ricau_I$mRAtIqzvsC)0Q zrnBx})G{_01!qvi0wNZWrXV1FL;-0cy%PZe=?cp=o%)o8ElcFnL%n^~rEOVvOrexKc@GJDkYe6TA>~ImdDK zw_tce>e$#YCho$U;-Fo%j_R5|*Ag&B@!>#te(}C=Jo?qA4*AxS(a3I%vKMNG$@(8i z038M-?HG5}y_$56Eps=%bAm#lHF2{}TONw@wBFF~Ldk5N2Z$RID4MI(FW6up(_Rea zJzD(w)v?m@L`3lQgacRO!^N_GsuMliX(xv?!I zjF$E}5fA0U;p>ilK#&`s)ps|Zeddw;p>n^6qr+wkNON(w@Yp76=kF)+aovE`+Dk5E zpF6~OB4f^2Yc$?{M&wzkO+mv*(3MII;m#qj_%q()^7O#3i&x$CREHiqgZF;B|B~<6 zI<~UYG~bx}_^@_KUyZ}s>Ew`X0I}-x>aJQPH+MSh9PrZ}Khxl)8!^{S^*A4+R5+qA z!w$7irs8DRZjC{_w38c>DmECuTzUHNbu&hX?l|&JEARx%v%mo5ux2c-NZsdi>`jk}~11yK9XZZJ!TJzwm>zy~`r1=$$U%Z|^ z)Vu!{`Evg9^Iu-*?DvvNHhDiY5cFQR9zGEQ;*|zDuIXqk9t9HQ5mI}v1nU9v9@Zs$PLs1uu{-WHS6J@E@u?)T6`Uz?^;u7QR# zC_N3=Xb#Kg{Pu_=N))Nz;9v7|T>WpvxWLjAbQR22=E;5(eHOlZ^J8n4F*l2QTs`^? z38kgr&mMvye0jf&SO9?I)#Ew){l1<=z3jNMbgRzc*XEN^FSuy`iX!o1=-WKQTPcs6 zD@V_BfqpvYy-orJ(1IgvsNYhLHn{!JC`TF|+_P2M@xmIr&pXMFoHRoFcBe>{@=L}e zvlGy31$bsLwiN6J(QS_2T+W5EC+YxMK`P&(n(B~bY-=P1F0d$(-` zQzOygbNj>Hi~+8Z@tI_+0_3jdOb?dT^R!n>ikG+!v#;hb6UMaPfM=c8x>A|HAdVHQ za*9{EmY9B^`^mqbwpz5hfA@=!C6tV?gSIhK)&1ym_*~NB_~T35aZxlM`e}WX+{C0z z%n3*q{?WP*9XlOW|BE2>Wc1Ge#0#?qxKpeLQ=X|uj^{wG*ZSj3A4S_&rnz;>4Ez@z z=~1YCu&f2;+F!&5&xHEbx<9qfqmqk!zSj<0n2x_NJ)R@0N&KH^XoH}K&hKAzrys36 zS9vr?>GwVMha^k_Z_nS_cRTW}&g5J1kvnU#jz8v2JAUipM!btSm{em@fN#BdYr(Vw zb@im1&h8Ty)<(_)Tg;mzzb#7K|42<+D*-ra@3j8kWUT?UCv~dFvi9|hA1m?%RehLw zxH0yr4r?y{{0+Ty{T!O^yuLumK3PBf+ZN695A?eos!;d3qxd%g(0fjeQXQ*! zqHTFxlCxvmks}f!Tg=KQHnpP?tmg033J1M)whrN5cLL!aKtl8ZT4fD-+A$7Oq}SyI z-OIX~!Q<11Rr%w}eD9F6;vt!T@io7x^tvyOCu`;9B5RI*QE{h?|GD#?^|l9pUIB=c z@=AkU#yebsAIF_oU=8(%kK8;$HSH+3{PRn{V39uO|46>=^P*LM`r{Day+QIR!(F4s zaL95{2a5RL>6z;nwmN;?J2|FJXgV0Ct>t?q?$Q#0bbQ;V2Ss=PV)pT6^jl7C);t7A zoTDlLlkE5-ukE)^{#7jXKN3xCj{SpZ`aA+_8Th4oqT{;rwmV{fF&K$^cl}kIw{wCP z|CZFf7x+N^|IAveM{3Dna8U#{me>SyYKz!??yVSbp8tA1m{Xg7II4^`-!tJ7etlX? zcUqeN$PTVdBiFPA&7BP?n5;x8Tn_nV=WN0sV5RkDuIs`ZaeQQGpCd)u(>W54`Ir=e zSFNa?si%BrP72GLmwJm9V!=<@U)if5%M{88zD1*-k49TikGb-*k9<2|m1f%cucEW6 zqL4?U`w8o+>D8oQH@myKrapll0K&wH*?t4Qm6X|2g$~k{?e>U<{(HD*@fj>PqywM25&tmxfdCY{ku{7!+j->(BFKSku zp>#$(FQ`F=>=+$=|M*`;bydZ{_-UjH*|tZb-)oo0+l(%njkrANrWmG8Wc6=xTjW>u#5M7 zVf;zny>##Omo=-k4KH;J{ucF}6F@ZANRJHl@2~2ec<(E*d-naw>jkvM_Z6RtDo� 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 From 9b68773241835c1bc5c2bf5c7930f484a931c44a Mon Sep 17 00:00:00 2001 From: liyang Date: Thu, 26 Sep 2024 10:59:27 +0800 Subject: [PATCH 6/7] refactor: use newClient to initialize greptime client --- examples/opentelemetry/main.go | 53 ++++++++++++++++++++-------------- 1 file changed, 31 insertions(+), 22 deletions(-) diff --git a/examples/opentelemetry/main.go b/examples/opentelemetry/main.go index 382e116..1edc474 100644 --- a/examples/opentelemetry/main.go +++ b/examples/opentelemetry/main.go @@ -44,13 +44,14 @@ import ( ) var ( - client *greptime.Client - serviceName = semconv.ServiceNameKey.String("test-otel") + metricsBindAddr = ":2233" // It connects the OpenTelemetry Collector through local gRPC connection. // You may replace `localhost:4317` with your endpoint. tracingEndpoint = "localhost:4317" +) +var ( // The GreptimeDB address. host = "127.0.0.1" @@ -58,6 +59,27 @@ var ( database = "public" ) +type client struct { + client *greptime.Client +} + +func newClient(tracerProvider trace.TracerProvider, meterProvider *metric.MeterProvider) *client { + cfg := greptime.NewConfig(host).WithDatabase(database). + WithTraceProvider(tracerProvider).WithTracesEnabled(true). + WithMeterProvider(meterProvider).WithMetricsEnabled(true) + + gtClient, err := greptime.NewClient(cfg) + if err != nil { + log.Fatal(err) + } + + c := &client{ + client: gtClient, + } + + return c +} + func main() { log.Printf("Waiting for connection...") @@ -67,9 +89,9 @@ func main() { conn, err := initConn() if err != nil { log.Fatal(err) - return } + serviceName := semconv.ServiceNameKey.String("test-otel") res, err := resource.New(ctx, resource.WithAttributes( // The service name used to display traces in backends @@ -78,19 +100,16 @@ func main() { ) if err != nil { log.Fatal(err) - return } tracerProvider, err := initTracerProvider(ctx, res, conn) if err != nil { log.Fatal(err) - return } exporter, err := otelprom.New(otelprom.WithNamespace("greptime")) if err != nil { log.Fatal(err) - return } meterProvider := metric.NewMeterProvider( metric.WithReader(exporter), @@ -99,25 +118,15 @@ func main() { err = initMeterProvider(ctx, res, conn) if err != nil { log.Fatal(err) - return } // Start the prometheus HTTP server and pass the exporter Collector to it go serveMetrics() - cfg := greptime.NewConfig(host).WithDatabase(database). - WithTraceProvider(tracerProvider).WithTracesEnabled(true). - WithMeterProvider(meterProvider).WithMetricsEnabled(true) - - cli_, err := greptime.NewClient(cfg) - if err != nil { - log.Fatal(err) - return - } - client = cli_ + c := newClient(tracerProvider, meterProvider) data := initData() - write(data[1]) + c.write(data[1]) log.Printf("Sleep 30s...") time.Sleep(30 * time.Second) @@ -180,9 +189,9 @@ func initMeterProvider(ctx context.Context, res *resource.Resource, conn *grpc.C } func serveMetrics() { - log.Printf("serving metrics at localhost:2233/metrics") + log.Printf("serving metrics at localhost%s/metrics", metricsBindAddr) http.Handle("/metrics", promhttp.Handler()) - err := http.ListenAndServe(":2233", nil) //nolint:gosec // Ignoring G114: Use of net/http serve function that has no support for setting timeouts. + err := http.ListenAndServe(metricsBindAddr, nil) //nolint:gosec // Ignoring G114: Use of net/http serve function that has no support for setting timeouts. if err != nil { fmt.Printf("error serving http: %v", err) return @@ -272,10 +281,10 @@ func initData() []*table.Table { return []*table.Table{itbl, utbl, dtbl} } -func write(data *table.Table) { +func (c client) write(data *table.Table) { ctx, cancel := context.WithTimeout(context.Background(), time.Second*3) defer cancel() - resp, err := client.Write(ctx, data) + resp, err := c.client.Write(ctx, data) if err != nil { log.Println(err) } From 1b8f42d3da10ba3640d1c3c912810bc80670be71 Mon Sep 17 00:00:00 2001 From: liyang Date: Thu, 26 Sep 2024 11:37:59 +0800 Subject: [PATCH 7/7] refactor: refactor handle error --- examples/opentelemetry/main.go | 80 ++++++++++++++++++---------------- 1 file changed, 42 insertions(+), 38 deletions(-) diff --git a/examples/opentelemetry/main.go b/examples/opentelemetry/main.go index 1edc474..6a50eae 100644 --- a/examples/opentelemetry/main.go +++ b/examples/opentelemetry/main.go @@ -43,15 +43,13 @@ import ( "github.com/GreptimeTeam/greptimedb-ingester-go/table/types" ) -var ( +const ( metricsBindAddr = ":2233" // It connects the OpenTelemetry Collector through local gRPC connection. // You may replace `localhost:4317` with your endpoint. tracingEndpoint = "localhost:4317" -) -var ( // The GreptimeDB address. host = "127.0.0.1" @@ -63,21 +61,21 @@ type client struct { client *greptime.Client } -func newClient(tracerProvider trace.TracerProvider, meterProvider *metric.MeterProvider) *client { +func newClient(tracerProvider trace.TracerProvider, meterProvider *metric.MeterProvider) (*client, error) { cfg := greptime.NewConfig(host).WithDatabase(database). WithTraceProvider(tracerProvider).WithTracesEnabled(true). WithMeterProvider(meterProvider).WithMetricsEnabled(true) gtClient, err := greptime.NewClient(cfg) if err != nil { - log.Fatal(err) + return nil, err } c := &client{ client: gtClient, } - return c + return c, nil } func main() { @@ -115,18 +113,25 @@ func main() { metric.WithReader(exporter), ) - err = initMeterProvider(ctx, res, conn) - if err != nil { + if err = initMeterProvider(ctx, res, conn); err != nil { log.Fatal(err) } // Start the prometheus HTTP server and pass the exporter Collector to it go serveMetrics() - c := newClient(tracerProvider, meterProvider) + c, err := newClient(tracerProvider, meterProvider) + if err != nil { + log.Fatalf("failed to new client: %v:", err) + } - data := initData() - c.write(data[1]) + data, err := initData() + if err != nil { + log.Fatalf("failed to init data: %v:", err) + } + if err = c.write(data[1]); err != nil { + log.Fatalf("failed to write data: %v:", err) + } log.Printf("Sleep 30s...") time.Sleep(30 * time.Second) @@ -193,100 +198,99 @@ func serveMetrics() { http.Handle("/metrics", promhttp.Handler()) err := http.ListenAndServe(metricsBindAddr, nil) //nolint:gosec // Ignoring G114: Use of net/http serve function that has no support for setting timeouts. if err != nil { - fmt.Printf("error serving http: %v", err) - return + log.Fatalf("error serving http: %v", err) } } -func initData() []*table.Table { - +func initData() ([]*table.Table, error) { time1 := time.Now() time2 := time.Now() time3 := time.Now() itbl, err := table.New("monitors_with_schema") if err != nil { - log.Println(err) + return nil, err } // add column at first. This is to define the schema of the table. if err := itbl.AddTagColumn("id", types.INT64); err != nil { - log.Println(err) + return nil, err } if err := itbl.AddFieldColumn("host", types.STRING); err != nil { - log.Println(err) + return nil, err } if err := itbl.AddFieldColumn("temperature", types.FLOAT); err != nil { - log.Println(err) + return nil, err } if err := itbl.AddTimestampColumn("timestamp", types.TIMESTAMP_MICROSECOND); err != nil { - log.Println(err) + return nil, err } if err := itbl.AddRow(1, "hello", 1.1, time1); err != nil { - log.Println(err) + return nil, err } if err := itbl.AddRow(2, "hello", 2.2, time2); err != nil { - log.Println(err) + return nil, err } if err := itbl.AddRow(3, "hello", 3.3, time3); err != nil { - log.Println(err) + return nil, err } utbl, err := table.New("monitors_with_schema") if err != nil { - log.Println(err) + return nil, err } // add column at first. This is to define the schema of the table. if err := utbl.AddTagColumn("id", types.INT64); err != nil { - log.Println(err) + return nil, err } if err := utbl.AddFieldColumn("host", types.STRING); err != nil { - log.Println(err) + return nil, err } if err := utbl.AddFieldColumn("temperature", types.FLOAT); err != nil { - log.Println(err) + return nil, err } if err := utbl.AddTimestampColumn("timestamp", types.TIMESTAMP_MICROSECOND); err != nil { - log.Println(err) + return nil, err } if err := utbl.AddRow(1, "hello", 1.2, time1); err != nil { - log.Println(err) + return nil, err } dtbl, err := table.New("monitors_with_schema") if err != nil { - log.Println(err) + return nil, err } // add column at first. This is to define the schema of the table. if err := dtbl.AddTagColumn("id", types.INT64); err != nil { - log.Println(err) + return nil, err } if err := dtbl.AddFieldColumn("host", types.STRING); err != nil { - log.Println(err) + return nil, err } if err := dtbl.AddFieldColumn("temperature", types.FLOAT); err != nil { - log.Println(err) + return nil, err } if err := dtbl.AddTimestampColumn("timestamp", types.TIMESTAMP_MICROSECOND); err != nil { - log.Println(err) + return nil, err } if err := dtbl.AddRow(3, "hello", 3.3, time3); err != nil { - log.Println(err) + return nil, err } - return []*table.Table{itbl, utbl, dtbl} + return []*table.Table{itbl, utbl, dtbl}, nil } -func (c client) write(data *table.Table) { +func (c client) write(data *table.Table) error { ctx, cancel := context.WithTimeout(context.Background(), time.Second*3) defer cancel() resp, err := c.client.Write(ctx, data) if err != nil { - log.Println(err) + return err } log.Printf("affected rows: %d\n", resp.GetAffectedRows().GetValue()) + return nil }