Skip to content

Instantly share code, notes, and snippets.

@ctaggart
Created November 28, 2016 17:09
Show Gist options
  • Save ctaggart/5689fbdc2c967b1888a40ac320fba8be to your computer and use it in GitHub Desktop.
Save ctaggart/5689fbdc2c967b1888a40ac320fba8be to your computer and use it in GitHub Desktop.
google logging example for blog
let configLogger() =
let traceAppender = log4net.Appender.TraceAppender()
traceAppender.Layout <- log4net.Layout.PatternLayout ( ConversionPattern = "%message" )
traceAppender.ActivateOptions();
let gcloudAppender = Google.Logging.Log4Net.GoogleStackdriverAppender()
gcloudAppender.ProjectId <- "ctaggartcom"
gcloudAppender.LogId <- "StackdriverLoggingFSharpExample"
gcloudAppender.Layout <- log4net.Layout.PatternLayout ( ConversionPattern = "%message" )
gcloudAppender.ActivateOptions()
let hierarchy = log4net.LogManager.GetRepository() :?> log4net.Repository.Hierarchy.Hierarchy
hierarchy.Root.AddAppender traceAppender
hierarchy.Root.AddAppender gcloudAppender
hierarchy.Root.Level <- log4net.Core.Level.Debug
hierarchy.Configured <- true
[<EntryPoint>]
let main argv =
configLogger()
let log = log4net.LogManager.GetLogger "Program"
log.Info "Yay logging!"
log.Debug "Works from Mono too."
log.Warn "Can't wait for the dependency trees in VS 2017."
// no Flush yet https://github.com/GoogleCloudPlatform/google-cloud-dotnet/issues/582
System.Threading.Thread.Sleep 10000 // 10 seconds
0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment