Skip to content

Instantly share code, notes, and snippets.

@ninjarobot
Created May 2, 2018 12:04
Show Gist options
  • Save ninjarobot/4df59c11ba0603efada1afcc74cf6ef7 to your computer and use it in GitHub Desktop.
Save ninjarobot/4df59c11ba0603efada1afcc74cf6ef7 to your computer and use it in GitHub Desktop.
Sample usage of Logary with Suave from @haf
type TraceLogger(name, minLevel) =
let logWithAck level fac =
if level < minLevel then async.Return () else
async {
let m = fac level
match m.value, level with
| Event event, _ when level >= LogLevel.Error ->
System.Diagnostics.Trace.TraceError(event, [||])
| Event event, _ when level = LogLevel.Warn ->
System.Diagnostics.Trace.TraceWarning(event, [||])
| Event event, _ ->
System.Diagnostics.Trace.TraceInformation(event, [||])
| _ ->
()
}
interface Logger with
member x.name = name
member x.logWithAck level fac = logWithAck level fac
member x.log level fac = logWithAck level fac
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment