#proxy #sentry #graylog #gelf

app gtsa

Simple proxy gelf messages to the Sentry

8 releases (4 breaking)

✓ Uses Rust 2018 edition

0.5.2 Apr 30, 2020
0.5.1 Apr 30, 2020
0.4.0 Apr 16, 2020
0.3.0 Mar 31, 2020
0.1.2 Mar 13, 2020

#72 in Development tools

Download history 25/week @ 2020-03-08 14/week @ 2020-03-15 8/week @ 2020-03-22 43/week @ 2020-03-29 14/week @ 2020-04-05 32/week @ 2020-04-12 7/week @ 2020-04-19 28/week @ 2020-04-26 16/week @ 2020-05-03

52 downloads per month

MIT and MPL-2.0 licenses


GTSA project


Gelf To Sentry Adapter is the simple solution to proxy gelf messages (messages for Graylog) to Sentry

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.


You need to docker or cargo with rust

Installing and running

You can install and run it with cargo

cargo install gtsa

Docker hub

docker pull mnwamnowich/gtsa
docker run -p 8080:8080/udp --env SENTRY_DSN=dsn --name gtsa mnwamnowich/gtsa

Or docker build

docker build -t gtsa .
docker run -p 8080:8080/udp --env SENTRY_DSN=dsn --name gtsa gtsa 

Now you can sent data on udp


For deploying GTSA you must to set is only one env variable:


SENTRY DSN must be only in the new format (without secret key)!

Also GTSA have a some env variables with default values, but you can edit it:

UDP_ADDR= //udp address
TCP_ADDR= // tcp address
SYSTEM=Gelf Mover // name of your application
READER_THREADS=1 // threads for decoding and encoding json messages (max parrallel messages processing)
UNPACKER_THREADS=1 // threads for unpacking messages what received with gz or zlib algoritms (max parrallel messages unpacking)
MAX_PARALLEL_CHUNKS=100000 // maximum chunked messages what GTSA can processing, old messages will be flush (udp only)


Sending udp message

 echo -n -e '{ "version": "1.1", "host": "example.org", "short_message": "A short message", "level": 5, "_some_info": "foo", "timestamp": 1582213226}'"" | nc -w0 -u 8080

Sending tcp message

echo -n -e '{ "version": "1.1", "host": "example.org", "short_message": "A short message", "level": 5, "_some_info": "foo", "timestamp": 1582213226}'"\0" | nc -w0 8081

Built With

  • actix - The actor framework used
  • tokio - Async realisation
  • cargo - Built with


I hope you know what you need to do.


We use SemVer for versioning. For the versions available, see the tags on this repository.


  • Mikhail Panfilov - Initial work - Mnwa

See also the list of contributors who participated in this project.


This project is licensed under the MIT License - see the LICENSE.md file for details


~255K SLoC