Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/batazor/go-logger
Writes telemetry to TSDB
https://github.com/batazor/go-logger
golang inluxdb logger microservice telemetry tsdb
Last synced: 8 days ago
JSON representation
Writes telemetry to TSDB
- Host: GitHub
- URL: https://github.com/batazor/go-logger
- Owner: batazor
- License: mit
- Created: 2018-05-04T09:21:51.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-10-10T21:07:42.000Z (about 1 year ago)
- Last Synced: 2024-10-12T12:49:23.532Z (24 days ago)
- Topics: golang, inluxdb, logger, microservice, telemetry, tsdb
- Language: Go
- Homepage: https://batazor.github.io/go-logger/
- Size: 4.06 MB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# go-logger
Writes telemetry to TSDB [![GoDoc][doc-img]][doc] [![OpenTracing Badge](https://img.shields.io/badge/OpenTracing-enabled-blue.svg)](http://opentracing.io)
### Feature
+ Support JSON data
+ Convert nested JSON to flat JSON
+ Support transports
+ AMQP (RabbitMQ) (Input data)
+ API
+ gRPC
+ Opentracing
+ Support
+ Kubernetes (Helm chart)
+ Healthcheck implementing Kubernetes liveness and readiness probe
+ Prometheus metrics
+ Grafana dashboard (https://grafana.com/dashboards/240)
+ GitLab CI### Getting start
CLICK ME
```
# Generate gRPC code
go get -u github.com/golang/protobuf/proto
protoc --go_out=plugins=grpc:. pb/*.proto# Run services
$ docker-compose up
```### ENV
| Name | Default value |
|----------------------------------|--------------------------------------------|
| GRPC_ENABLE | true |
| GRPC_PORT | "50051" |
| REDIS_ENABLE | true |
| MONGO_ENABLE | true |
| AMQP_ENABLE | true |
| AMQP_API | amqp://telemetry:telemetry@localhost:5672/ |
| AMQP_NAME_QUEUE | go-logger-packets |
| AMQP_EXCHANGE_LIST | "demo1, demo2" |
| AMQP_EXCHANGE_TYPE | "headers" |
| DB_ID | "_oid" |
| PROMETHEUS_ENABLED | "true" |
| OPENTRACING_ENABLED | "true" |
| JAEGER_SERVICE_NAME | go-logger |
| JAEGER_AGENT_HOST_PORT | "localhost:5778" |
| JAEGER_RPC_METRICS | "true" |#### Grafana
CLICK ME
##### Grafana dashboard example
**Support:**
- Group by ID object#### Prometheus
CLICK ME
Prometheus metrics `localhost:9090/metrics`
Prometheus metrics:
- Basic metrics#### GitLAb CI
This project support GitLab CI
CLICK ME
| Name | Description |
|-----------------------|--------------------------------------------|
| DOCKER_PASS | -- |
| DOCKER_USER | -- |
| GITHUB_PASSWORD | -- |
| GITHUB_REPOSITORY_URL | -- |
| GITHUB_USER | -- |
| HELM_CONTEXT | -- |
| PROJECT_NAMESPACE | -- |### Benchmark
CLICK ME
##### Run bot
Run `go run /tests/bot/bot.go`
##### Read from AMQP queue (1M message/1 instance)
![read_packets](./docs/read_packet.png)
[doc-img]: https://godoc.org/github.com/batazor/go-logger?status.svg
[doc]: https://godoc.org/github.com/batazor/go-logger