Categorygithub.com/gokhanm/logging
modulepackage
0.1.0
Repository: https://github.com/gokhanm/logging.git
Documentation: pkg.go.dev

# README

logging

Golang logging library with logrus and graylog hook support

import log "github.com/gokhanm/logging"

func main() {
    // you can set your own logrus formatter. text, json ..
    formatter = &log.TextFormatter{
        TimestampFormat: "2006-01-02 15:04:05",
        ForceColors:     true,
        FullTimestamp:   true,
    }
    logger := log.Initialize(formatter)
    // Initialize returns logrus Logger pointer. 
    // with this you can use logrus functions if your want
    logger.SetLevel(logrus.DebugLevel)
}

Multi-custom logrus fields and aync graylog hook example

import log "github.com/gokhanm/logging"

func main() {

    // or you can use the default text logrus formatter in the lib.
    log.Initialize(nil)

    // you can have fields always attached to log statements by SetDefaultFields in an application
    fields := map[string]interface{}{"name": "gokhan", "app": "appName"}
    log.SetDefaultFields(fields)

    // also if you use graylog log management system
    // you can send your log data to the graylog as async 
    log.AddAsyncGraylogHook("127.0.0.1", "1000", nil)
}

# Functions

AddAsyncGraylogHook also send log data to graylog.
Printf calls Output to print to the standard logger.
Println calls Output to print to the standard logger.
Errorf calls Output to print to the standard logger with error level.
Errorln calls Output to print to the standard logger with error level.
Fatalf is equivalent to Logf() followed by a call to os.Exit(1).
Fatalln is equivalent to Logln() followed by a call to os.Exit(1).
Initialize is using default set text formatter if formatter is nil.
Printf calls Output to print to the standard logger.
Println calls Output to print to the standard logger.
SetDefaultFields, you can have fields always attached to log statements in application.
SplitLogs adds hooks to send logs to different destinations depending on level.
Warnf calls Output to print to the standard logger with warm level.
Warnln calls Output to print to the standard logger with warm level.

# Structs

WriterHook is a hook that writes logs of specified LogLevels to specified Writer.