Sample code for 30+ languages & platforms
Go

Enter/Leave Context in Logging

Demonstrates EnterContext and LeaveContext using the Chilkat Log API.

Chilkat Go Downloads

Go
    log := chilkat.NewLog()

    // Initialize the log object with an initial context tag:
    log.Clear("myLog")

    // Add some information..
    log.LogInfo("Hello, I'm here...")

    // Open a sub-context
    log.EnterContext("abc")

    // New information is now logged within the "abc" context.
    log.LogInfo("This is inside the abc context")
    log.LogError("File not found.")

    // Perhaps open a new context...
    log.EnterContext("fileInfo")
    log.LogData("filename","something.txt")
    log.LogData("path","/somedir/xyz")
    log.LeaveContext()

    // Close the "abc" context.
    log.LeaveContext()

    // Examine the content of the log:
    fmt.Println(log.LastErrorText())

    // This is the output:

    // myLog:
    //   Hello, I'm here...
    //   abc:
    //     This is inside the abc context
    //     File not found.
    //     fileInfo:
    //       filename: something.txt
    //       path: /somedir/xyz
    //     --fileInfo
    //   --abc
    // --myLog

    log.DisposeLog()