Skip to content

Commit

Permalink
add --insecure-skip-verify CLI argument to skip certificate validat…
Browse files Browse the repository at this point in the history
…ion when sending data to Coroot
  • Loading branch information
def committed Oct 15, 2024
1 parent ccd14a5 commit f411fa1
Show file tree
Hide file tree
Showing 5 changed files with 18 additions and 6 deletions.
13 changes: 7 additions & 6 deletions flags/flags.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,13 @@ var (
LogPerSecond = kingpin.Flag("log-per-second", "The number of logs per second").Default("10.0").Envar("LOG_PER_SECOND").Float64()
LogBurst = kingpin.Flag("log-burst", "The maximum number of tokens that can be consumed in a single call to allow").Default("100").Envar("LOG_BURST").Int()

CollectorEndpoint = kingpin.Flag("collector-endpoint", "A base endpoint URL for metrics, traces, logs, and profiles").Envar("COLLECTOR_ENDPOINT").URL()
ApiKey = kingpin.Flag("api-key", "Coroot API key").Envar("API_KEY").String()
MetricsEndpoint = kingpin.Flag("metrics-endpoint", "The URL of the endpoint to send metrics to").Envar("METRICS_ENDPOINT").URL()
TracesEndpoint = kingpin.Flag("traces-endpoint", "The URL of the endpoint to send traces to").Envar("TRACES_ENDPOINT").URL()
LogsEndpoint = kingpin.Flag("logs-endpoint", "The URL of the endpoint to send logs to").Envar("LOGS_ENDPOINT").URL()
ProfilesEndpoint = kingpin.Flag("profiles-endpoint", "The URL of the endpoint to send profiles to").Envar("PROFILES_ENDPOINT").URL()
CollectorEndpoint = kingpin.Flag("collector-endpoint", "A base endpoint URL for metrics, traces, logs, and profiles").Envar("COLLECTOR_ENDPOINT").URL()
ApiKey = kingpin.Flag("api-key", "Coroot API key").Envar("API_KEY").String()
MetricsEndpoint = kingpin.Flag("metrics-endpoint", "The URL of the endpoint to send metrics to").Envar("METRICS_ENDPOINT").URL()
TracesEndpoint = kingpin.Flag("traces-endpoint", "The URL of the endpoint to send traces to").Envar("TRACES_ENDPOINT").URL()
LogsEndpoint = kingpin.Flag("logs-endpoint", "The URL of the endpoint to send logs to").Envar("LOGS_ENDPOINT").URL()
ProfilesEndpoint = kingpin.Flag("profiles-endpoint", "The URL of the endpoint to send profiles to").Envar("PROFILES_ENDPOINT").URL()
InsecureSkipVerify = kingpin.Flag("insecure-skip-verify", "whether to skip verifying the certificate or not").Envar("INSECURE_SKIP_VERIFY").Default("false").Bool()

ScrapeInterval = kingpin.Flag("scrape-interval", "How often to gather metrics from the agent").Default("15s").Envar("SCRAPE_INTERVAL").Duration()
WalDir = kingpin.Flag("wal-dir", "Path to where the agent stores data (e.g. the metrics Write-Ahead Log)").Default("/tmp/coroot-node-agent").Envar("WAL_DIR").String()
Expand Down
2 changes: 2 additions & 0 deletions logs/otel.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package logs

import (
"context"
"crypto/tls"
"time"

otel "github.com/agoda-com/opentelemetry-logs-go"
Expand Down Expand Up @@ -36,6 +37,7 @@ func Init(machineId, hostname, version string) {
otlplogshttp.WithEndpoint(endpointUrl.Host),
otlplogshttp.WithURLPath(path),
otlplogshttp.WithHeaders(common.AuthHeaders()),
otlplogshttp.WithTLSClientConfig(&tls.Config{InsecureSkipVerify: *flags.InsecureSkipVerify}),
}
if endpointUrl.Scheme != "https" {
opts = append(opts, otlplogshttp.WithInsecure())
Expand Down
4 changes: 4 additions & 0 deletions profiling/profiling.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package profiling

import (
"bytes"
"crypto/tls"
"fmt"
"hash/fnv"
"io"
Expand Down Expand Up @@ -35,6 +36,9 @@ var (
constLabels labels.Labels
httpClient = http.Client{
Timeout: UploadTimeout,
Transport: &http.Transport{
TLSClientConfig: &tls.Config{InsecureSkipVerify: *flags.InsecureSkipVerify},
},
}
endpointUrl *url.URL
session ebpfspy.Session
Expand Down
3 changes: 3 additions & 0 deletions prom/agent.go
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,9 @@ func StartAgent(machineId string) error {
Headers: common.AuthHeaders(),
RemoteTimeout: model.Duration(RemoteWriteTimeout),
QueueConfig: config.DefaultQueueConfig,
HTTPClientConfig: promConfig.HTTPClientConfig{
TLSConfig: promConfig.TLSConfig{InsecureSkipVerify: *flags.InsecureSkipVerify},
},
},
)
cfg.ScrapeConfigs = append(cfg.ScrapeConfigs, &config.ScrapeConfig{
Expand Down
2 changes: 2 additions & 0 deletions tracing/tracing.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package tracing

import (
"context"
"crypto/tls"
"fmt"
"time"

Expand Down Expand Up @@ -43,6 +44,7 @@ func Init(machineId, hostname, version string) {
otlptracehttp.WithEndpoint(endpointUrl.Host),
otlptracehttp.WithURLPath(path),
otlptracehttp.WithHeaders(common.AuthHeaders()),
otlptracehttp.WithTLSClientConfig(&tls.Config{InsecureSkipVerify: *flags.InsecureSkipVerify}),
}
if endpointUrl.Scheme != "https" {
opts = append(opts, otlptracehttp.WithInsecure())
Expand Down

0 comments on commit f411fa1

Please sign in to comment.