From 5b4df795d18ec8923d42b5dd0e1418b28826fffc Mon Sep 17 00:00:00 2001 From: Charles Iliya Krempeaux Date: Sat, 10 Oct 2015 17:28:51 -0700 Subject: [PATCH] added to docs --- doc.go | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/doc.go b/doc.go index 3d386fe..6c045b0 100644 --- a/doc.go +++ b/doc.go @@ -9,7 +9,7 @@ Basic usage of the flogger looks like this: flogger := flog.New(router) -Once you have this, you can do things such as: +Once you have the flogger, you can do things such as: flogger.Print("Hello world!") flogger.Println("Hello world!") @@ -24,5 +24,35 @@ Once you have this, you can do things such as: flogger.Fatalf("Something really bad happened: %s.", problemDescription) +Deployment Environment + +Of course in a real application system you should (probably) create a different kind +of flogger for each deployment environment. + +For example: + + var flogger flog.Flogger + + switch deploymentEnvironment { + case "DEV": + router := NewPrettyWritingRouter(os.Stdout) + + flogger = flog.New(router) + case "PROD": + verboseRouter = flog.NewDiscardingRouter() + if isVerboseMode { + verboseRouter = NewCustomVerboseRouter() + } + + panicDetectionRouter := flog.NewFilteringRouter(NewCustomerPanicRecordingRouter(), filterOnlyPanicsFunc) + + errorDetectionRouter := flog.NewFilteringRouter(NewCustomerPanicRecordingRouter(), filterOnlyErrorsFunc) + + router := NewFanoutRouter(verboseRouter, panicDetectionRouter, errorDetectionRouter) + + flogger = flog.New(router) + } + + */ package flog