Skip to content

A logging library with strack traces, object dumping and optional timestamps

License

Notifications You must be signed in to change notification settings

pieterclaerhout/go-log

Folders and files

NameName
Last commit message
Last commit date
Feb 7, 2023
May 25, 2020
Oct 16, 2022
Nov 18, 2019
May 23, 2020
Oct 16, 2022
Oct 1, 2019
Oct 16, 2022
May 23, 2020
Feb 17, 2025
Feb 17, 2025
Oct 16, 2022
Oct 16, 2022
Oct 16, 2022
Oct 16, 2022

Repository files navigation

go-log

Build Status Go Report Card Documentation license GitHub version GitHub issues

This is a Golang library with logging related functions which I use in my different projects.

Usage

package main

import (
    "github.com/pieterclaerhout/go-log"
)

func main() {

    log.DebugMode = true
    log.PrintTimestamp = true
    log.PrintColors = true
    log.TimeFormat = "2006-01-02 15:04:05.000"

    myVar := map[string]string{"hello": "world"}

    log.Debug("arg1", "arg2")
    log.Debugf("arg1 %d", 1)
    log.DebugDump(myVar, "prefix")
    log.DebugSeparator("title")

    log.Info("arg1", "arg2")
    log.Infof("arg1 %d", 1)
    log.InfoDump(myVar, "prefix")
    log.InfoSeparator("title")

    log.Warn("arg1", "arg2")
    log.Warnf("arg1 %d", 1)
    log.WarnDump(myVar, "prefix")
    log.WarnSeparator("title")

    log.Error("arg1", "arg2")
    log.Errorf("arg1 %d", 1)
    log.ErrorDump(myVar, "prefix")
    log.ErrorSeparator("title")

    log.Fatal("arg1", "arg2")
    log.Fatalf("arg1 %d", 1)

    err1 := funcWithError()
    log.StackTrace(err1)

    err2 := funcWithError()
    log.CheckError(err2)

}

Environment variables

The defaults are taken from the environment variables:

  • DEBUG: log.DebugMode
  • PRINT_TIMESTAMP: log.PrintTimestamp