Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/omerxx/crystal-methrics
A blazing fast crystal lang events data pipeline utlizing redis and ELK, visualizing the data automatically
https://github.com/omerxx/crystal-methrics
Last synced: 11 days ago
JSON representation
A blazing fast crystal lang events data pipeline utlizing redis and ELK, visualizing the data automatically
- Host: GitHub
- URL: https://github.com/omerxx/crystal-methrics
- Owner: omerxx
- License: mit
- Created: 2018-04-27T22:41:00.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2018-05-17T21:24:51.000Z (over 6 years ago)
- Last Synced: 2024-08-02T05:12:09.114Z (3 months ago)
- Language: Crystal
- Homepage:
- Size: 23.4 KB
- Stars: 1
- Watchers: 2
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-blazingly-fast - crystal-methrics - A blazing fast crystal lang events data pipeline utlizing redis and ELK, visualizing the data automatically (Crystal)
README
# crystal-methrics
Send any metric, from anywhere, using a simple HTTP request and get it visualized.
No SDKs, not pricey metric frameworks, and no special strcuture or scheme: `/metric/my-event/value/100`## Data Flow
Crystal Router --> Redis Cache --> Logstash Enrichment --> ElasticSearch --> Visualization
## Installation
Lazy?
```
docker compose up
```
Yes, that's it.Looking for robustness?
Deploy logstash as a container service in your production infrastructure.
Deploy Redis anywhere e.g ElasticCache.
Deplou ElasticSearch anywhere e.g AWS's ElasticSearch as a Service.
Deploy Crystal Methrics as a binary / docker container / whereever.## Usage
```
/metric/my-event/value/100
```## Contributing
1. Fork it ( https://github.com/[your-github-name]/crystal-methrics/fork )
2. Create your feature branch (git checkout -b my-new-feature)
3. Commit your changes (git commit -am 'Add some feature')
4. Push to the branch (git push origin my-new-feature)
5. Create a new Pull Request## Contributors
- [[your-github-name]](https://github.com/[your-github-name]) omerxx - creator, maintainer