Skip to content

Commit

Permalink
Upgraded Jaeger exporter to use OTLP HTTP
Browse files Browse the repository at this point in the history
  • Loading branch information
bincyber committed Aug 18, 2024
1 parent 113e265 commit 8588415
Show file tree
Hide file tree
Showing 21 changed files with 333 additions and 1,407 deletions.
10 changes: 10 additions & 0 deletions .changes/v1.1.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
## v1.1.0 - 2024-08-11

### Fixed
* `Monthly` interval is now the same week every month (eg, first Monday of every month) - [#27](https://github.com/chat-roulettte/chat-roulette/pull/27)

### Added
* `QuadWeekly` interval option to preserve the old behavior of `Monthly` - [#27](https://github.com/chat-roulettte/chat-roulette/pull/27)

### Changed
* Jaeger now uses OTLP HTTP exporter - [#28](https://github.com/chat-roulettte/chat-roulette/pull/28)
8 changes: 4 additions & 4 deletions .github/workflows/go.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,15 +18,15 @@ jobs:
- name: Setup Go
uses: actions/setup-go@v3
with:
go-version: 1.19
go-version: 1.22

- name: Checkout code
uses: actions/checkout@v3

- name: golangci-lint
uses: golangci/golangci-lint-action@v3
with:
version: v1.50.1
version: v1.60.1

test:
name: test
Expand All @@ -35,7 +35,7 @@ jobs:
- name: Setup Go
uses: actions/[email protected]
with:
go-version: 1.19
go-version: 1.22

- name: Checkout code
uses: actions/checkout@v3
Expand All @@ -46,7 +46,7 @@ jobs:
- name: Setup gotestsum
uses: autero1/[email protected]
with:
gotestsum_version: 1.8.2
gotestsum_version: 1.12.0

- name: Run tests
run: make go/testsum
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ go/tools:
go install github.com/miniscruff/[email protected]

go/tidy:
go mod tidy -compat=1.19
go mod tidy -compat=1.22

go/test:
go test -v --cover ./...
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
_Chat Roulette for Slack is an open-source chat-roulette app for Slack. A no-frills, self-hosted, free alternative to the popular [Donut](https://www.donut.com/) app._

[![License](https://img.shields.io/badge/License-AGPL-orange.svg)](https://www.gnu.org/licenses/agpl-3.0.en.html)
[![Go](https://img.shields.io/badge/Go-1.19-blue.svg)](#)
[![Go](https://img.shields.io/badge/Go-1.22-blue.svg)](#)
[![Go Report Card](https://img.shields.io/badge/go%20report-A%2B-brightgreen)](https://goreportcard.com/report/github.com/chat-roulettte/chat-roulette)


Expand Down
2 changes: 1 addition & 1 deletion cmd/app-manifest/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM docker.io/library/golang:1.19 as build
FROM docker.io/library/golang:1.22 as build
ADD . /src
WORKDIR /src
RUN go build -o /src/bin/app-manifest cmd/app-manifest/main.go
Expand Down
2 changes: 1 addition & 1 deletion cmd/chat-roulette/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM docker.io/library/golang:1.19 as build
FROM docker.io/library/golang:1.22 as build
ADD . /src
WORKDIR /src
RUN make go/build
Expand Down
4 changes: 2 additions & 2 deletions docs/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ The following config options control the default chat-roulette settings for ever
| -------- | -------- | -------- | -------- | -------- | ------
| `enabled` | `TRACING_ENABLED` | Boolean | No | `false` | Setting this to true enables tracing using [OpenTelemetry](https://opentelemetry.io/).
| `exporter` | `TRACING_EXPORTER` | String | No | | The tracing exporter to use. This must be set if tracing is enabled. <br /><br />Options: <ul><li>`honeycomb`</li><li>`jaeger`</li></ul>
| `endpoint` | `TRACING_JAEGER_ENDPOINT` | String | No | | The URL of the Jaeger collector. This must be set if the tracing exporter is set to `jaeger`.
| `endpoint` | `TRACING_JAEGER_ENDPOINT` | String | No | | The URL of the Jaeger OTLP HTTP collector. This must be set if the tracing exporter is set to `jaeger`.
| `team` | `TRACING_HONEYCOMB_TEAM` | String | No | | The [honeycomb.io](https://www.honeycomb.io/) API key. This must be set if the tracing exporter is set to `honeycomb`.
| `dataset` | `TRACING_HONEYCOMB_DATASET` | String | No | | The dataset to send traces to. This must be set if the tracing exporter is set to `honeycomb`.

Expand All @@ -145,7 +145,7 @@ The following config options control the default chat-roulette settings for ever
"enabled": true,
"exporter": "jaeger",
"jaeger": {
"endpoint": "http://localhost:14268/api/traces"
"endpoint": "http://localhost:4318/v1/traces"
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion docs/development.md
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,7 @@ Tracing can be enabled by adding the following settings to the config file:
"enabled": true,
"exporter": "jaeger",
"jaeger": {
"endpoint": "http://example.com:14268/api/traces"
"endpoint": "http://localhost:4318/api/traces"
}
}
```
Expand Down
115 changes: 58 additions & 57 deletions go.mod
Original file line number Diff line number Diff line change
@@ -1,93 +1,92 @@
module github.com/chat-roulettte/chat-roulette

go 1.19
go 1.22

require (
github.com/DATA-DOG/go-sqlmock v1.5.0
github.com/DATA-DOG/go-sqlmock v1.5.2
github.com/Masterminds/sprig/v3 v3.2.3
github.com/akamensky/argparse v1.4.0
github.com/bincyber/go-sqlcrypter v0.2.0
github.com/coreos/go-oidc/v3 v3.4.0
github.com/coreos/go-oidc/v3 v3.11.0
github.com/dgraph-io/ristretto v0.1.1
github.com/dustin/go-humanize v1.0.0
github.com/dustin/go-humanize v1.0.1
github.com/go-ozzo/ozzo-validation/v4 v4.3.0
github.com/go-playground/tz v0.0.0-20200117153713-f73b7c143ef6
github.com/golang-migrate/migrate/v4 v4.15.2
github.com/gorilla/mux v1.8.0
github.com/gorilla/schema v1.2.0
github.com/gorilla/sessions v1.2.1
github.com/hashicorp/go-hclog v1.3.1
github.com/go-playground/tz v0.0.1
github.com/golang-migrate/migrate/v4 v4.17.1
github.com/gorilla/mux v1.8.1
github.com/gorilla/schema v1.4.1
github.com/gorilla/sessions v1.3.0
github.com/hashicorp/go-hclog v1.6.3
github.com/hashicorp/go-multierror v1.1.1
github.com/hashicorp/go-retryablehttp v0.7.1
github.com/hashicorp/go-retryablehttp v0.7.7
github.com/ory/dockertest v3.3.5+incompatible
github.com/pkg/errors v0.9.1
github.com/sebdah/goldie/v2 v2.5.3
github.com/segmentio/ksuid v1.0.4
github.com/slack-go/slack v0.11.4
github.com/spf13/viper v1.14.0
github.com/stretchr/testify v1.8.2
github.com/stretchr/testify v1.9.0
github.com/unrolled/render v1.5.0
github.com/uptrace/opentelemetry-go-extra/otelgorm v0.1.17
github.com/uptrace/opentelemetry-go-extra/otelgorm v0.3.1
go.opentelemetry.io/contrib/instrumentation/github.com/gorilla/mux/otelmux v0.36.4
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.36.4
go.opentelemetry.io/otel v1.14.0
go.opentelemetry.io/otel/exporters/jaeger v1.11.1
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.14.0
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.11.1
go.opentelemetry.io/otel/sdk v1.14.0
go.opentelemetry.io/otel/trace v1.14.0
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0
go.opentelemetry.io/otel v1.28.0
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.28.0
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.28.0
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.28.0
go.opentelemetry.io/otel/sdk v1.28.0
go.opentelemetry.io/otel/trace v1.28.0
golang.org/x/oauth2 v0.22.0
golang.org/x/text v0.14.0
google.golang.org/grpc v1.53.0
gorm.io/datatypes v1.2.1
golang.org/x/text v0.17.0
google.golang.org/grpc v1.65.0
gorm.io/datatypes v1.0.7
gorm.io/driver/postgres v1.5.0
gorm.io/gorm v1.25.9
gorm.io/gorm v1.25.10
sigs.k8s.io/yaml v1.3.0
)

require (
filippo.io/edwards25519 v1.1.0 // indirect
github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 // indirect
github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 // indirect
github.com/Masterminds/goutils v1.1.1 // indirect
github.com/Masterminds/semver/v3 v3.2.0 // indirect
github.com/Microsoft/go-winio v0.5.2 // indirect
github.com/Microsoft/go-winio v0.6.1 // indirect
github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5 // indirect
github.com/asaskevich/govalidator v0.0.0-20200108200545-475eaeb16496 // indirect
github.com/cenkalti/backoff v2.2.1+incompatible // indirect
github.com/cenkalti/backoff/v4 v4.2.0 // indirect
github.com/cespare/xxhash/v2 v2.2.0 // indirect
github.com/cenkalti/backoff/v4 v4.3.0 // indirect
github.com/cespare/xxhash/v2 v2.3.0 // indirect
github.com/containerd/continuity v0.2.2 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/docker/go-connections v0.4.0 // indirect
github.com/docker/go-units v0.4.0 // indirect
github.com/fatih/color v1.13.0 // indirect
github.com/felixge/httpsnoop v1.0.3 // indirect
github.com/docker/go-units v0.5.0 // indirect
github.com/fatih/color v1.16.0 // indirect
github.com/felixge/httpsnoop v1.0.4 // indirect
github.com/fsnotify/fsnotify v1.6.0 // indirect
github.com/go-logr/logr v1.2.3 // indirect
github.com/go-jose/go-jose/v4 v4.0.2 // indirect
github.com/go-logr/logr v1.4.2 // indirect
github.com/go-logr/stdr v1.2.2 // indirect
github.com/go-sql-driver/mysql v1.8.1 // indirect
github.com/golang/glog v1.0.0 // indirect
github.com/golang/protobuf v1.5.2 // indirect
github.com/google/uuid v1.3.0 // indirect
github.com/gorilla/securecookie v1.1.1 // indirect
github.com/go-sql-driver/mysql v1.6.0 // indirect
github.com/golang/glog v1.2.1 // indirect
github.com/google/uuid v1.6.0 // indirect
github.com/gorilla/securecookie v1.1.2 // indirect
github.com/gorilla/websocket v1.4.2 // indirect
github.com/gotestyourself/gotestyourself v2.2.0+incompatible // indirect
github.com/grpc-ecosystem/grpc-gateway/v2 v2.7.0 // indirect
github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0 // indirect
github.com/hashicorp/errwrap v1.1.0 // indirect
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
github.com/hashicorp/hcl v1.0.0 // indirect
github.com/huandu/xstrings v1.3.3 // indirect
github.com/imdario/mergo v0.3.12 // indirect
github.com/jackc/pgpassfile v1.0.0 // indirect
github.com/jackc/pgservicefile v0.0.0-20231201235250-de7065d80cb9 // indirect
github.com/jackc/pgx/v5 v5.5.5 // indirect
github.com/jackc/pgservicefile v0.0.0-20221227161230-091c0ba34f0a // indirect
github.com/jackc/pgx/v5 v5.5.4 // indirect
github.com/jackc/puddle/v2 v2.2.1 // indirect
github.com/jinzhu/inflection v1.0.0 // indirect
github.com/jinzhu/now v1.1.5 // indirect
github.com/lib/pq v1.10.2 // indirect
github.com/lib/pq v1.10.9 // indirect
github.com/magiconair/properties v1.8.6 // indirect
github.com/mattn/go-colorable v0.1.12 // indirect
github.com/mattn/go-isatty v0.0.14 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/mitchellh/copystructure v1.0.0 // indirect
github.com/mitchellh/mapstructure v1.5.0 // indirect
github.com/mitchellh/reflectwalk v1.0.0 // indirect
Expand All @@ -99,26 +98,28 @@ require (
github.com/pmezard/go-difflib v1.0.0 // indirect
github.com/sergi/go-diff v1.0.0 // indirect
github.com/shopspring/decimal v1.2.0 // indirect
github.com/sirupsen/logrus v1.8.1 // indirect
github.com/sirupsen/logrus v1.9.2 // indirect
github.com/spf13/afero v1.9.2 // indirect
github.com/spf13/cast v1.5.0 // indirect
github.com/spf13/jwalterweatherman v1.1.0 // indirect
github.com/spf13/pflag v1.0.5 // indirect
github.com/subosito/gotenv v1.4.1 // indirect
github.com/uptrace/opentelemetry-go-extra/otelsql v0.1.17 // indirect
go.opentelemetry.io/otel/exporters/otlp/internal/retry v1.14.0 // indirect
go.opentelemetry.io/otel/metric v0.33.0 // indirect
go.opentelemetry.io/proto/otlp v0.19.0 // indirect
github.com/uptrace/opentelemetry-go-extra/otelsql v0.3.1 // indirect
go.opentelemetry.io/otel/metric v1.28.0 // indirect
go.opentelemetry.io/proto/otlp v1.3.1 // indirect
go.uber.org/atomic v1.9.0 // indirect
golang.org/x/crypto v0.22.0 // indirect
golang.org/x/net v0.21.0 // indirect
golang.org/x/sync v0.1.0 // indirect
golang.org/x/sys v0.19.0 // indirect
google.golang.org/genproto v0.0.0-20230110181048-76db0878b65f // indirect
google.golang.org/protobuf v1.28.1 // indirect
golang.org/x/crypto v0.25.0 // indirect
golang.org/x/mod v0.17.0 // indirect
golang.org/x/net v0.27.0 // indirect
golang.org/x/sync v0.8.0 // indirect
golang.org/x/sys v0.22.0 // indirect
golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20240701130421-f6361c86f094 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20240701130421-f6361c86f094 // indirect
google.golang.org/protobuf v1.34.2 // indirect
gopkg.in/ini.v1 v1.67.0 // indirect
gopkg.in/square/go-jose.v2 v2.6.0 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
gorm.io/driver/mysql v1.5.6 // indirect
gorm.io/driver/mysql v1.3.2 // indirect
gotest.tools v2.2.0+incompatible // indirect
)
Loading

0 comments on commit 8588415

Please sign in to comment.