Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/butlerx/syphon-go
Versatile metrics processor, proxy and forwarder
https://github.com/butlerx/syphon-go
Last synced: 15 days ago
JSON representation
Versatile metrics processor, proxy and forwarder
- Host: GitHub
- URL: https://github.com/butlerx/syphon-go
- Owner: butlerx
- License: apache-2.0
- Created: 2020-03-11T20:20:42.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2023-02-23T03:05:22.000Z (almost 2 years ago)
- Last Synced: 2024-10-31T22:12:06.471Z (2 months ago)
- Language: Go
- Size: 639 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Welcome to syphon 👋
[![Build and Test](https://github.com/butlerx/syphon-go/workflows/Build%20and%20Test/badge.svg)](https://github.com/butlerx/syphon-go/actions?query=workflow%3A%22UBuild+and+Test%22)
[![Upload Release Asset](https://github.com/butlerx/syphon-go/workflows/Upload%20Release%20Asset/badge.svg)](https://github.com/butlerx/syphon-go/actions?query=workflow%3A%22Upload+Release+Asset%22)
[![CodeQL](https://github.com/butlerx/syphon-go/workflows/CodeQL/badge.svg)](https://github.com/butlerx/syphon-go/actions?query=workflow%3ACodeQL)
![Go Version](https://img.shields.io/github/go-mod/go-version/butlerx/syphon-go?style=flat-square)
[![License: Apache License 2.0](https://img.shields.io/badge/License-Apache%20License%202.0-yellow.svg)](./LICENSE)
[![Twitter: cianbutlerx](https://img.shields.io/twitter/follow/cianbutlerx.svg?style=social)](https://twitter.com/cianbutlerx)> Versatile metrics processor, proxy and forwarder
## Install
```bash
go get github.com/butlerx/syphon/cmd/syphon
```## Usage
```bash
$ syphon -h
NAME:
syphon - Versatile metrics processor, proxy and forwarderUSAGE:
syphon [options] COMMANDVERSION:
1.0.0DESCRIPTION:
syphon is designed to accept and route metrics traffic.
Metrics can be received from socket, snooped from live traffic or read from file or kafka.
Metrics can be exportered via file, kafka or udp/tcpAUTHOR:
Cian ButlerCOMMANDS:
help, h Shows a list of commands or help for one commandGLOBAL OPTIONS:
--config value Config file to use
--print Print default config (default: false)
--help, -h show help (default: false)
--version, -v print the version (default: false)
```## Configuration
```toml
[metric]
# Endpoint for store internal carbon metrics.
# Valid values: "" or "local", "tcp://host:port", "udp://host:port"
endpoint = "local"
# Interval of storing internal metrics. Like CARBON_METRIC_INTERVAL
interval = "1m0s"[logging]
# "stderr", "stdout" can be used as file name
file = "stderr"
# Logging error level. Valid values: "debug", "info", "warn", "error"
level = "info"
# Logging encoding format. Valid values: "mixes", "json", "console"
encoding = "mixed"
encoding-time = "iso8601"
encoding-duration = "seconds"[file]
enabled = false
path = ""[prometheus]
listen = ":2006"
enabled = false[tcp]
listen = ":2003"
enabled = true[udp]
listen = ":2003"
# Setting mode to promiscuous sets the interface to promiscuously listen
# mode = "promiscuous"
enabled = true[[uploader.file]]
enabled = true
path = "metrics_recieved.txt"
# RegEx pattern to use to Determine if metric should be sent
pattern = ".*"[[uploader.udp]]
enabled = true
host = "localhost"
port = 2004
pattern = ".*"[[uploader.tcp]]
enabled = true
host = "localhost"
port = 2004
pattern = ".*"# Designed for use with carbon-clickhouse
# https://github.com/lomik/carbon-clickhouse/blob/master/grpc/carbon.proto
[[uploader.grpc]]
enabled = false
host = "localhost"
port = 2005
pattern = ".*"
```## Run tests
```sh
make test
```## Author
👤 **Cian Butler**
- Website: [cianbutler.ie](https://cianbutler.ie)
- Twitter: [@cianbutlerx](https://twitter.com/cianbutlerx)
- Github: [@butlerx](https://github.com/butlerx)
- LinkedIn: [@butlerx](https://linkedin.com/in/butlerx)## 🤝 Contributing
Contributions, issues and feature requests are welcome!
Feel free to check [issues page](https://github.com/butlerx/syphon-go/issues).
## Show your support
Give a ⭐️ if this project helped you!
## 📝 License
Copyright © 2020 [Cian Butler](https://github.com/butlerx).
This project is [Apache License 2.0](./LICENSE) licensed.