proxy.golang.org : github.com/mongodb/grip : v0.0.0-20231010153552-fd9e260891f5
Package grip provides a flexible logging package for basic Go programs. Drawing inspiration from Go and Python's standard library logging, as well as systemd's journal service, and other logging systems, Grip provides a number of very powerful logging abstractions in one high-level package. The central type of the grip package is the Journaler type, instances of which provide distinct log capturing system. For ease, following from the Go standard library, the grip package provides parallel public methods that use an internal "standard" Jouernaler instance in the grip package, which has some defaults configured and may be sufficient for many use cases. The send.Sender interface provides a way of changing the logging backend, and the send package provides a number of alternate implementations of logging systems, including: systemd's journal, logging to standard output, logging to a file, and generic syslog support. The message.Composer interface is the representation of all messages. They are implemented to provide a raw structured form as well as a string representation for more conentional logging output. Furthermore they are intended to be easy to produce, and defer more expensive processing until they're being logged, to prevent expensive operations producing messages that are below threshold. The MutiCatcher type makes it possible to collect from a group of operations and then aggregate them as a single error. Loging helpers exist for the following levels: These methods accept both strings (message content,) or types that implement the message.MessageComposer interface. Composer types make it possible to delay generating a message unless the logger is over the logging threshold. Use this to avoid expensive serialization operations for suppressed logging operations. All levels also have additional methods with `ln` and `f` appended to the end of the method name which allow Println() and Printf() style functionality. You must pass printf/println-style arguments to these methods. The Conditional logging methods take two arguments, a Boolean, and a message argument. Messages can be strings, objects that implement the MessageComposer interface, or errors. If condition boolean is true, the threshold level is met, and the message to log is not an empty string, then it logs the resolved message. Use conditional logging methods to potentially suppress log messages based on situations orthogonal to log level, with "log sometimes" or "log rarely" semantics. Combine with MessageComposers to to avoid expensive message building operations.
Registry -
Documentation -
Download -
JSON
purl: pkg:golang/github.com/mongodb/[email protected]
Published:
Indexed:
- github.com/ProtonMail/go-crypto v0.0.0-20230217124315-7d5c6f04bbb8
- github.com/PuerkitoBio/rehttp v1.1.0
- github.com/andygrunwald/go-jira v1.14.0
- github.com/aws/aws-sdk-go-v2 v1.18.1
- github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.34
- github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.28
- github.com/aws/aws-sdk-go-v2/service/ses v1.15.11
- github.com/aws/smithy-go v1.13.5
- github.com/cloudflare/circl v1.3.3
- github.com/coreos/go-systemd v0.0.0-20191104093116-d3cd4ed1dbcf
- github.com/davecgh/go-spew v1.1.1
- github.com/dghubble/oauth1 v0.7.2
- github.com/evergreen-ci/utility v0.0.0-20230613214910-daa83783f97c
- github.com/fatih/structs v1.1.0
- github.com/felixge/httpsnoop v1.0.3
- github.com/fuyufjh/splunk-hec-go v0.3.4-0.20190414090710-10df423a9f36
- github.com/go-logr/logr v1.2.4
- github.com/go-logr/stdr v1.2.2
- github.com/go-ole/go-ole v1.2.6
- github.com/golang-jwt/jwt v3.2.1+incompatible
- github.com/golang/protobuf v1.5.2
- github.com/google/go-github/v53 v53.0.0
- github.com/google/go-querystring v1.1.0
- github.com/google/uuid v1.3.0
- github.com/gorilla/websocket v1.4.2
- github.com/jmespath/go-jmespath v0.4.0
- github.com/jpillora/backoff v1.0.0
- github.com/kr/pretty v0.3.1
- github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0
- github.com/mattn/go-xmpp v0.0.0-20210723025538-3871461df959
- github.com/montanaflynn/stats v0.0.0-20180911141734-db72e6cae808
- github.com/pkg/errors v0.9.1
- github.com/pmezard/go-difflib v1.0.0
- github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c
- github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06
- github.com/shirou/gopsutil/v3 v3.23.5
- github.com/shoenig/go-m1cpu v0.1.6
- github.com/slack-go/slack v0.12.1
- github.com/stretchr/testify v1.8.3
- github.com/tklauser/go-sysconf v0.3.11
- github.com/tklauser/numcpus v0.6.0
- github.com/trivago/tgo v1.0.7
- github.com/yusufpapurcu/wmi v1.2.3
- go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.42.0
- go.opentelemetry.io/otel v1.16.0
- go.opentelemetry.io/otel/metric v1.16.0
- go.opentelemetry.io/otel/sdk v1.15.1
- go.opentelemetry.io/otel/trace v1.16.0
- golang.org/x/crypto v0.7.0
- golang.org/x/net v0.10.0
- golang.org/x/oauth2 v0.8.0
- golang.org/x/sys v0.8.0
- google.golang.org/appengine v1.6.7
- google.golang.org/protobuf v1.28.0
- gopkg.in/yaml.v2 v2.4.0
- gopkg.in/yaml.v3 v3.0.1