Go Logging

Open-source Go projects categorized as Logging
Golang Go Logger Log JSON

Top 23 Go Logging Projects

  • logrus

    Structured, pluggable logging for Go.

    Project mention: Beautiful graph visualizations of packages for different managers | news.ycombinator.com | 2024-06-27

    The graphics remind me very much of Netwars [1], although the controls of Netwars were a little bit better. However, this feels so good compared to some randomly generated universe, as you know that every star is something meaningful. And you can find actually helpful stuff: I just found logrus [2] a Go library for logging, which sounds cool :-D

    1: https://en.wikipedia.org/wiki/NetWars

    2: https://github.com/Sirupsen/logrus

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • loki

    Like Prometheus, but for logs.

    Project mention: 26 Top Kubernetes Tools | dev.to | 2024-06-12

    Loki is a log collation tool from the Grafana family of observability solutions. It aggregates, groups, and labels logs from your applications, helping you troubleshoot problems and monitor activity. Although Loki is a general-purpose tool, it's well-suited to Kubernetes and comes with several Kubernetes-specific features. It automatically scrapes and indexes metadata from your Kubernetes workload objects, such as Pod labels, to accompany your Pod logs.

  • zap

    Blazing fast, structured, leveled logging in Go.

    Project mention: Show HN: WAL Implementation in Golang | news.ycombinator.com | 2024-07-08

    1. You're right! Will fix it to handle this as well as the support for relative directories

    2. Yes, Will integrate a logging library instead of fmt (https://github.com/uber-go/zap)

  • gf

    GoFrame is a modular, powerful, high-performance and enterprise-class application development framework of Golang. (by gogf)

  • zerolog

    Zero Allocation JSON Logger

    Project mention: Go 1.21 Released | news.ycombinator.com | 2023-08-08

    Be aware that there is a performance impact compared to using zerolog directly [0] (my uneducated guess is it is likely due to pointer indirection).

    [0]: https://github.com/rs/zerolog/issues/571#issuecomment-166202...

  • go-grpc-middleware

    Golang gRPC Middlewares: interceptor chaining, auth, logging, retries and more.

  • spew

    Implements a deep pretty printer for Go data structures to aid in debugging

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  • dozzle

    Realtime log viewer for docker containers.

    Project mention: Dozzle: Lightweight, web-based Docker log viewer with real-time monitoring | news.ycombinator.com | 2024-01-29
  • lumberjack

    lumberjack is a log rolling package for Go

  • glog

    Leveled execution logs for Go (by golang)

  • stern

    ⎈ Multi pod and container log tailing for Kubernetes -- Friendly fork of https://github.com/wercker/stern (by stern)

    Project mention: ☸️ Kubernetes: From your docker-compose file to a cluster with Kompose | dev.to | 2024-03-09

    deploy: stage: deploy image: alpine/k8s:1.29.1 variables: NAMESPACE: $CI_COMMIT_REF_SLUG before_script: # init namespace - kubectl config use-context $KUBE_CONTEXT - kubectl create namespace $NAMESPACE || true # download tools - curl --show-error --silent --location https://github.com/stern/stern/releases/download/v1.22.0/stern_1.22.0_linux_amd64.tar.gz | tar zx --directory /usr/bin/ stern && chmod 755 /usr/bin/stern && stern --version - curl --show-error --silent --location https://github.com/kubernetes/kompose/releases/download/v1.32.0/kompose-linux-amd64 -o /usr/local/bin/kompose && chmod a+x /usr/local/bin/kompose && kompose version # show logs asynchronously. Timeout to avoid hanging indefinitely when an error occurs in script section - timeout 1200 stern -n $NAMESPACE "app-" --tail=0 --color=always & # in background, tail new logs if any (current and incoming) pod with this regex as name - timeout 1200 kubectl -n $NAMESPACE get events --watch-only & # in background, tail new events in background script: # first delete CrashLoopBackOff pods, polluting logs - kubectl -n $NAMESPACE delete pod `kubectl -n $NAMESPACE get pods --selector app.kubernetes.io/component=$MODULE | awk '$3 == "CrashLoopBackOff" {print $1}'` || true # now deploying - kompose convert --out k8s/ - kubectl apply -n $NAMESPACE -f k8s/ - echo -e "\e[93;1mWaiting for the new app version to be fully operational...\e[0m" # waiting for successful deployment - kubectl -n $NAMESPACE rollout status deploy/app-db - kubectl -n $NAMESPACE rollout status deploy/app-back - kubectl -n $NAMESPACE rollout status deploy/app-front # on any error before this line, the script will still wait for these threads to complete, so the initial timeout is important. Adding these commands to after_script does not help - pkill stern || true - pkill kubectl || true after_script: # show namespace content - kubectl config use-context $KUBE_CONTEXT - kubectl -n $NAMESPACE get deploy,service,ingress,pod

  • datadog-agent

    Main repository for Datadog Agent

    Project mention: How to create a link between two spans in OpenTelemetry | dev.to | 2024-04-19
  • tail

    Go package for reading from continously updated files (tail -f)

  • log

    A minimal, colorful Go logging library 🪵 (by charmbracelet)

  • kail

    kubernetes log viewer

  • pp

    Colored pretty printer for Go language

  • seelog

    Seelog is a native Go logging library that provides flexible asynchronous dispatching, filtering, and formatting.

  • logging-operator

    Logging operator for Kubernetes

    Project mention: Multi-tenant logging on Kubernetes | /r/kubernetes | 2023-12-06

    Learn about how the Logging operator (CNCF Sandbox project) enables multi-tenant scenarios:

  • litter

    Litter is a pretty printer library for Go data structures to aid in debugging and testing.

  • log

    Structured logging package for Go. (by apex)

  • logr

    A simple logging interface for Go

  • SigLens

    100x Efficient Log Management than Splunk, Reduce your observability cost by 90%

    Project mention: Siglens: A columnar OLAP db that can execute queries 50x faster than ClickHouse | news.ycombinator.com | 2024-02-20

    I found their claims exaggerated: https://github.com/siglens/siglens/issues/created_by/alexey-...

  • log15

    Structured, composable logging for Go

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

Go Logging discussion

Log in or Post with

Go Logging related posts

Index

What are some of the best open-source Logging projects in Go? This list will help you:

Project Stars
1 logrus 24,330
2 loki 22,827
3 zap 21,322
4 gf 11,124
5 zerolog 10,111
6 go-grpc-middleware 6,186
7 spew 5,983
8 dozzle 4,948
9 lumberjack 4,713
10 glog 3,515
11 stern 3,056
12 datadog-agent 2,735
13 tail 2,675
14 log 2,191
15 kail 1,955
16 pp 1,806
17 seelog 1,639
18 logging-operator 1,516
19 litter 1,504
20 log 1,354
21 logr 1,222
22 SigLens 1,126
23 log15 1,104

Sponsored
Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com

Did you konow that Go is
the 4th most popular programming language
based on number of metions?