Skip to content

Commit f7d8bb7

Browse files
committed
Ingest metrics and traces via otel collector
* add firehose enabled property * otel configuration helper script * bump minor version Add needed go dependencies fix tests changes to hopefully eliminate data gaps
1 parent fa05106 commit f7d8bb7

84 files changed

Lines changed: 12822 additions & 394 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

go.mod

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ require (
2424
github.com/prometheus/client_model v0.5.0
2525
github.com/prometheus/common v0.45.0
2626
github.com/prometheus/prometheus v0.47.0
27+
go.opentelemetry.io/proto/otlp v1.0.0
2728
go.uber.org/atomic v1.11.0
2829
go.uber.org/zap v1.26.0
2930
golang.org/x/net v0.18.0
@@ -110,6 +111,7 @@ require (
110111
github.com/googleapis/gax-go/v2 v2.12.0 // indirect
111112
github.com/gophercloud/gophercloud v1.5.0 // indirect
112113
github.com/gorilla/websocket v1.5.0 // indirect
114+
github.com/grpc-ecosystem/grpc-gateway/v2 v2.16.0 // indirect
113115
github.com/hashicorp/consul/api v1.22.0 // indirect
114116
github.com/hashicorp/cronexpr v1.1.2 // indirect
115117
github.com/hashicorp/errwrap v1.1.0 // indirect

go.sum

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -828,6 +828,7 @@ github.com/golang/geo v0.0.0-20190916061304-5b978397cfec h1:lJwO/92dFXWeXOZdoGXg
828828
github.com/golang/geo v0.0.0-20190916061304-5b978397cfec/go.mod h1:QZ0nwyI2jOfgRAoBvP+ab5aRr7c9x7lhGEJrKvBwjWI=
829829
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
830830
github.com/golang/glog v1.0.0/go.mod h1:EWib/APOK0SL3dFbYqvxE3UYd8E6s1ouQ7iEp/0LWV4=
831+
github.com/golang/glog v1.1.2 h1:DVjP2PbBOzHyzA+dn3WhHIq4NdVu3Q+pvivFICf/7fo=
831832
github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
832833
github.com/golang/groupcache v0.0.0-20191227052852-215e87163ea7/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
833834
github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
@@ -970,6 +971,8 @@ github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFb
970971
github.com/grpc-ecosystem/grpc-gateway/v2 v2.7.0/go.mod h1:hgWBS7lorOAVIJEQMi4ZsPv9hVvWI6+ch50m39Pf2Ks=
971972
github.com/grpc-ecosystem/grpc-gateway/v2 v2.11.1/go.mod h1:G+WkljZi4mflcqVxYSgvt8MNctRQHjEH8ubKtt1Ka3w=
972973
github.com/grpc-ecosystem/grpc-gateway/v2 v2.11.3/go.mod h1:o//XUCC/F+yRGJoPO/VU0GSB0f8Nhgmxx0VIRUvaC0w=
974+
github.com/grpc-ecosystem/grpc-gateway/v2 v2.16.0 h1:YBftPWNWd4WwGqtY2yeZL2ef8rHAxPBD8KFhJpmcqms=
975+
github.com/grpc-ecosystem/grpc-gateway/v2 v2.16.0/go.mod h1:YN5jB8ie0yfIUg6VvR9Kz84aCaG7AsGZnLjhHbUqwPg=
973976
github.com/hashicorp/consul/api v1.10.1/go.mod h1:XjsvQN+RJGWI2TWy1/kqaE16HrR2J/FWgkYjdZQsX9M=
974977
github.com/hashicorp/consul/api v1.12.0/go.mod h1:6pVBMo0ebnYdt2S3H87XhekM/HHrUoTD2XXb/VrZVy0=
975978
github.com/hashicorp/consul/api v1.18.0/go.mod h1:owRRGJ9M5xReDC5nfT8FTJrNAPbT4NM6p/k+d03q2v4=
@@ -1556,6 +1559,8 @@ go.opentelemetry.io/otel/trace v1.21.0/go.mod h1:LGbsEB0f9LGjN+OZaQQ26sohbOmiMR+
15561559
go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI=
15571560
go.opentelemetry.io/proto/otlp v0.15.0/go.mod h1:H7XAot3MsfNsj7EXtrA2q5xSNQ10UqI405h3+duxN4U=
15581561
go.opentelemetry.io/proto/otlp v0.19.0/go.mod h1:H7XAot3MsfNsj7EXtrA2q5xSNQ10UqI405h3+duxN4U=
1562+
go.opentelemetry.io/proto/otlp v1.0.0 h1:T0TX0tmXU8a3CbNXzEKGeU5mIVOdf0oykP+u2lIVU/I=
1563+
go.opentelemetry.io/proto/otlp v1.0.0/go.mod h1:Sy6pihPLfYHkr3NkUbEhGHFhINUSI/v80hjKIs5JXpM=
15591564
go.step.sm/crypto v0.16.2 h1:Pr9aazTwWBBZNogUsOqhOrPSdwAa9pPs+lMB602lnDA=
15601565
go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE=
15611566
go.uber.org/atomic v1.5.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ=

jobs/metric-store-nozzle/spec

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,9 @@ templates:
77
logs_provider.crt.erb: config/certs/logs_provider.crt
88
logs_provider.key.erb: config/certs/logs_provider.key
99
logs_provider_ca.crt.erb: config/certs/logs_provider_ca.crt
10+
otel_provider.crt.erb: config/certs/otel_provider.crt
11+
otel_provider.key.erb: config/certs/otel_provider.key
12+
otel_provider_ca.crt.erb: config/certs/otel_provider_ca.crt
1013
metric_store_client_ca.crt.erb: config/certs/metric_store_client_ca.crt
1114
metric_store_client.crt.erb: config/certs/metric_store_client.crt
1215
metric_store_client.key.erb: config/certs/metric_store_client.key
@@ -44,6 +47,16 @@ properties:
4447
logs_provider.tls.key:
4548
description: "TLS key for the logs-provider connection"
4649

50+
otel_provider.tls.ca_cert:
51+
description: "CA root required for key/cert verification to connect to the otel-provider"
52+
otel_provider.tls.cert:
53+
description: "TLS certificate for the otel-provider connection"
54+
otel_provider.tls.key:
55+
description: "TLS key for the otel-provider connection"
56+
otel_port:
57+
description: "The port for the Nozzle to bind an otel endpoint"
58+
default: 6062
59+
4760
metrics_port:
4861
description: "The port for the Nozzle to bind a prometheus metrics endpoint"
4962
default: 6061
@@ -63,3 +76,6 @@ properties:
6376
enable_envelope_selector:
6477
description: Enable envelopes with specified tags. If enabled, only envelopes with specific tags will keep. By default envelopes with app_id and applicationGuid tags are enabled.
6578
default: false
79+
firehose_enabled:
80+
description: If enabled, connect to the firehose.
81+
default: false

jobs/metric-store-nozzle/templates/bpm.yml.erb

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,12 @@ processes:
3030
LOGS_PROVIDER_CERT_PATH: "<%= "#{cert_dir}/logs_provider.crt" %>"
3131
LOGS_PROVIDER_KEY_PATH: "<%= "#{cert_dir}/logs_provider.key" %>"
3232

33+
# Otel Provider
34+
OTEL_ADDR: "<%= "0.0.0.0:#{p('otel_port')}" %>"
35+
OTEL_PROVIDER_CA_PATH: "<%= "#{cert_dir}/otel_provider_ca.crt" %>"
36+
OTEL_PROVIDER_CERT_PATH: "<%= "#{cert_dir}/otel_provider.crt" %>"
37+
OTEL_PROVIDER_KEY_PATH: "<%= "#{cert_dir}/otel_provider.key" %>"
38+
3339
# Metric Store Client Mutual TLS
3440
METRIC_STORE_CLIENT_CA_PATH: "<%= "#{cert_dir}/metric_store_client_ca.crt" %>"
3541
METRIC_STORE_CLIENT_CERT_PATH: "<%= "#{cert_dir}/metric_store_client.crt" %>"
@@ -40,9 +46,9 @@ processes:
4046
METRIC_STORE_METRICS_CERT_PATH: "<%= "#{cert_dir}/metric_store_metrics.crt" %>"
4147
METRIC_STORE_METRICS_KEY_PATH: "<%= "#{cert_dir}/metric_store_metrics.key" %>"
4248

43-
GODEBUG: "x509ignoreCN=0" # temporary (15Sep2020) while we wait for upstream (firehose) certs to be updated
4449
GRPC_GO_LOG_SEVERITY_LEVEL: "warning"
4550
GRPC_GO_LOG_VERBOSITY_LEVEL: "1"
4651
ENABLE_ENVELOPE_SELECTOR: "<%= p('enable_envelope_selector') %>"
52+
FIREHOSE_ENABLED: "<%= p('firehose_enabled') %>"
4753
limits:
4854
open_files: 8192
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
<%= p("otel_provider.tls.cert") %>
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
<%= p("otel_provider.tls.key") %>
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
<%= p("otel_provider.tls.ca_cert") %>

manifests/ops-files/add-metric-store-to-cfd.yml

Lines changed: 0 additions & 258 deletions
This file was deleted.

0 commit comments

Comments
 (0)