Clymene

module
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 20, 2021 License: Apache-2.0

README

Clymene

The Clymene is a time series data collection platform for distributed systems inspired by Prometheus and Jaeger. Time series data from various environments can be collected and stored in different types of databases. It can be configured in a variety of architectures. Various time series data analysis functions will be added.

Clymene는 PrometheusJaeger에서 영감을 받은 분산 시스템을 위한 시계열 데이터 수집 플랫폼입니다. 다양한 환경의 시계열 데이터를 수집하고 여러 종류의 데이터베이스에 저장할 수 있습니다. 여러 컴포넌트를 이용해 다양한 아키텍처로 구성할 수 있습니다. 다양한 시계열 데이터 분석 기능이 추가될 예정입니다.

Architecture

Release v1.0.0

Use only agent(Agent만 사용)

Agent can store time series data in a variety of DBs and support Composite Writers that can be stored in multiple DBs at once.
Release_1.0.0.png

Including kafka and ingester(Kafka 사용 시)

Ingester consumes time series data loaded on kafka, can store time series data in various DBs, and supports Composite Writers that can be stored in multiple DBs at once.
Including_kafka_Release_1.0.0.png

Use gateway(Gateway 사용 시)

Gateway collects time series data through gRPC communication, stores time series data in various DBs, and supports Composite Writers that can be stored in multiple DBs at once.
Release_1.1.0.png

components

Clymene Agent(Getting Started)

The Clymene-agent is service that collects time series data(does not use disks)

  1. Service Discovery
  2. scrape time series data
  3. Time-series data transfer to gateway(gRPC) (Optional) (TODO)
  4. Time-series data transfer to kafka (Optional)
  5. Time-series data insert to Database(ElasticSearch, Prometheus, gateway, ETC) (Optional)
Clymene Ingester(Optional) (Getting Started)

The Clymene ingester is an optional service responsible for insert time series data loaded on kafka into the database.

  1. Kafka message consume
  2. Time-series data insert to Database(ElasticSearch, Prometheus, gateway, ETC) (Optional)
Clymene Gateway(Optional) (Getting Started)

The Clymene Gateway is an optional service that can receive metric data from the another component through gRPC communication.

  1. gRPC Service
  2. Time-series data insert to Database(ElasticSearch, Prometheus, ETC) (Optional)

Roadmap

  1. Various DB support(influxdb, kdb, opentsdb, druid)
  2. AI/ML platform for clymene(https://github.com/Clymene-project/clymene-analyzer)
  3. Website development for clymene(https://github.com/Clymene-project/documentation)

Code Style

1. https://github.com/golang/go/wiki/CodeReviewComments
2. https://peter.bourgon.org/go-in-production/#formatting-and-style

Directories

Path Synopsis
cmd
agent command
gateway command
ingester command
pkg
es
metrics
Package metrics provides command line flags for configuring the metrics backend.
Package metrics provides command line flags for configuring the metrics backend.
Package plugin is the collection of implementations of different interfaces defined across Jaeger For example, implementations of the storage interface can be found in the plugin package
Package plugin is the collection of implementations of different interfaces defined across Jaeger For example, implementations of the storage interface can be found in the plugin package
Package prompb is a reverse proxy.
Package prompb is a reverse proxy.
util
promlint
Package promlint provides a linter for Prometheus metrics.
Package promlint provides a linter for Prometheus metrics.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL