AppHole is a simple server and emitter implementation for sending log messages from applications that do not have direct terminal access. Its primary purpose is to facilitate quick and easy lightweight logging when debugging and tracing. It includes command line programs and library modules to be flexible and minimize overhead.
From GitHub:
go run github.com/pravus/apphole/cmd/serve@v0.0.0From a cloned repository:
go run ./cmd/serve server, err := apphole.NewServer(apphole.ServerConfig{
Host: apphole.DefaultHost,
Port: apphole.DefaultPort,
BufferSize: apphole.DefaultBufferSize,
})
if err != nil {
return fmt.Errorf("failed to create apphole server: %w", err)
}
...
if err := server.Up(); err != nil {
return fmt.Errorf("failed to start apphole server: %w", err)
}
...
if err := server.Down(); err != nil {
return fmt.Errorf("failed to stop apphole server: %w", err)
}From GitHub:
go run github.com/pravus/apphole/cmd/emit@v0.0.0 The quick brown fox jumped over the lazy dog.From a cloned repository:
go run ./cmd/emit The quick brown fox jumped over the lazy dog.import "github.com/pravus/apphole"
...
apphole.Emit("The quick brown %s jumped over the lazy %s", "fox", "dog")
... client, err := apphole.NewClient(apphole.DefaultHost, apphole.DefaultPort)
if err != nil {
panic(err)
}
client.Emit("The quick brown %s jumped over the lazy %s", "fox", "dog")