Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alc6/logrus-logstash-hook
Forked self repository of https://github.com/bshuster-repo/logrus-logstash-hook
https://github.com/alc6/logrus-logstash-hook
Last synced: 29 days ago
JSON representation
Forked self repository of https://github.com/bshuster-repo/logrus-logstash-hook
- Host: GitHub
- URL: https://github.com/alc6/logrus-logstash-hook
- Owner: alc6
- License: mit
- Created: 2020-11-26T16:35:38.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2020-11-30T11:12:09.000Z (about 4 years ago)
- Last Synced: 2024-06-20T07:56:48.788Z (7 months ago)
- Language: Go
- Size: 60.5 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
[![Build Status](https://travis-ci.com/alc6/logrus-logstash-hook.svg?branch=master)](https://travis-ci.com/alc6/logrus-logstash-hook)
[![Go Report Card](https://goreportcard.com/badge/github.com/alc6/logrus-logstash-hook)](https://goreportcard.com/report/github.com/alc6/logrus-logstash-hook)# Logstash hook for logrus
This repository is a fork of https://github.com/bshuster-repo/logrus-logstash-hook, with opinionated changes related to logrus/logstash.Basically, you might be interested in this fork if you're likely to use logrus with the Report Caller, and if you want a ns precision on the logs sent to logstash.
All the credit of the work is given to Boaz Shuster.
Use this hook to send the logs to [Logstash](https://www.elastic.co/products/logstash).
# Usage
```go
package mainimport (
"github.com/bshuster-repo/logrus-logstash-hook"
"github.com/sirupsen/logrus"
"net"
)func main() {
log := logrus.New()
conn, err := net.Dial("tcp", "logstash.mycompany.net:8911")
if err != nil {
log.Fatal(err)
}
hook := logrustash.New(conn, logrustash.DefaultFormatter(logrus.Fields{"type": "myappName"}))log.Hooks.Add(hook)
ctx := log.WithFields(logrus.Fields{
"method": "main",
})
ctx.Info("Hello World!")
}```
This is how it will look like:
```ruby
{
"@timestamp" => "2016-02-29T16:57:23.456Z",
"@version" => "1",
"level" => "info",
"message" => "Hello World!",
"method" => "main",
"host" => "172.17.0.1",
"port" => 45199,
"type" => "myappName"
}
```This is how it will look like with report caller enabled:
```ruby
{
"@timestamp" => "2016-02-29T16:57:23.456Z",
"@version" => "1",
"level" => "info",
"message" => "Hello World!",
"method" => "main",
"host" => "172.17.0.1",
"port" => 45199,
"type" => "myappName"
"file" => "github.com/user/project/main.go:10"
"func" => "github.com/user/project/moduleMain.Func
}
```# Maintainers
Name | Github | Twitter |
------------ | --------- | ---------- |
Boaz Shuster | ripcurld0 | @ripcurld0 |# License
Boaz Shuster/MIT.