Top 0.1% dependent packages on proxy.golang.org
Top 0.2% dependent repos on proxy.golang.org
Top 2.2% forks on proxy.golang.org
Top 0.2% docker downloads on proxy.golang.org
proxy.golang.org : github.com/inconshreveable/log15
Package log15 provides an opinionated, simple toolkit for best-practice logging that is both human and machine readable. It is modeled after the standard library's io and net/http packages. This package enforces you to only log key/value pairs. Keys must be strings. Values may be any type that you like. The default output format is logfmt, but you may also choose to use JSON instead if that suits you. Here's how you log: This will output a line that looks like: To get started, you'll want to import the library: Now you're ready to start logging: Because recording a human-meaningful message is common and good practice, the first argument to every logging method is the value to the *implicit* key 'msg'. Additionally, the level you choose for a message will be automatically added with the key 'lvl', and so will the current timestamp with key 't'. You may supply any additional context as a set of key/value pairs to the logging function. log15 allows you to favor terseness, ordering, and speed over safety. This is a reasonable tradeoff for logging functions. You don't need to explicitly state keys/values, log15 understands that they alternate in the variadic argument list: If you really do favor your type-safety, you may choose to pass a log.Ctx instead: Frequently, you want to add context to a logger so that you can track actions associated with it. An http request is a good example. You can easily create new loggers that have context that is automatically included with each log line: This will output a log line that includes the path context that is attached to the logger: The Handler interface defines where log lines are printed to and how they are formated. Handler is a single interface that is inspired by net/http's handler interface: Handlers can filter records, format them, or dispatch to multiple other Handlers. This package implements a number of Handlers for common logging patterns that are easily composed to create flexible, custom logging structures. Here's an example handler that prints logfmt output to Stdout: Here's an example handler that defers to two other handlers. One handler only prints records from the rpc package in logfmt to standard out. The other prints records at Error level or above in JSON formatted output to the file /var/log/service.json This package implements three Handlers that add debugging information to the context, CallerFileHandler, CallerFuncHandler and CallerStackHandler. Here's an example that adds the source file and line number of each logging call to the context. This will output a line that looks like: Here's an example that logs the call stack rather than just the call site. This will output a line that looks like: The "%+v" format instructs the handler to include the path of the source file relative to the compile time GOPATH. The github.com/go-stack/stack package documents the full list of formatting verbs and modifiers available. The Handler interface is so simple that it's also trivial to write your own. Let's create an example handler which tries to write to one handler, but if that fails it falls back to writing to another handler and includes the error that it encountered when trying to write to the primary. This might be useful when trying to log over a network socket, but if that fails you want to log those records to a file on disk. This pattern is so useful that a generic version that handles an arbitrary number of Handlers is included as part of this library called FailoverHandler. Sometimes, you want to log values that are extremely expensive to compute, but you don't want to pay the price of computing them if you haven't turned up your logging level to a high level of detail. This package provides a simple type to annotate a logging operation that you want to be evaluated lazily, just when it is about to be logged, so that it would not be evaluated if an upstream Handler filters it out. Just wrap any function which takes no arguments with the log.Lazy type. For example: If this message is not logged for any reason (like logging at the Error level), then factorRSAKey is never evaluated. The same log.Lazy mechanism can be used to attach context to a logger which you want to be evaluated when the message is logged, but not when the logger is created. For example, let's imagine a game where you have Player objects: You always want to log a player's name and whether they're alive or dead, so when you create the player object, you might do: Only now, even after a player has died, the logger will still report they are alive because the logging context is evaluated when the logger was created. By using the Lazy wrapper, we can defer the evaluation of whether the player is alive or not to each log message, so that the log records will reflect the player's current state no matter when the log message is written: If log15 detects that stdout is a terminal, it will configure the default handler for it (which is log.StdoutHandler) to use TerminalFormat. This format logs records nicely for your terminal, including color-coded output based on log level. Becasuse log15 allows you to step around the type system, there are a few ways you can specify invalid arguments to the logging functions. You could, for example, wrap something that is not a zero-argument function with log.Lazy or pass a context key that is not a string. Since logging libraries are typically the mechanism by which errors are reported, it would be onerous for the logging functions to return errors. Instead, log15 handles errors by making these guarantees to you: - Any log record containing an error will still be printed with the error explained to you as part of the log record. - Any log record containing an error will include the context key LOG15_ERROR, enabling you to easily (and if you like, automatically) detect if any of your logging calls are passing bad values. Understanding this, you might wonder why the Handler interface can return an error value in its Log method. Handlers are encouraged to return errors only if they fail to write their log records out to an external source like if the syslog daemon is not responding. This allows the construction of useful handlers which cope with those failures like the FailoverHandler. log15 is intended to be useful for library authors as a way to provide configurable logging to users of their library. Best practice for use in a library is to always disable all output for your logger by default and to provide a public Logger instance that consumers of your library can configure. Like so: Users of your library may then enable it if they like: The ability to attach context to a logger is a powerful one. Where should you do it and why? I favor embedding a Logger directly into any persistent object in my application and adding unique, tracing context keys to it. For instance, imagine I am writing a web browser: When a new tab is created, I assign a logger to it with the url of the tab as context so it can easily be traced through the logs. Now, whenever we perform any operation with the tab, we'll log with its embedded logger and it will include the tab title automatically: There's only one problem. What if the tab url changes? We could use log.Lazy to make sure the current url is always written, but that would mean that we couldn't trace a tab's full lifetime through our logs after the user navigate to a new URL. Instead, think about what values to attach to your loggers the same way you think about what to use as a key in a SQL database schema. If it's possible to use a natural key that is unique for the lifetime of the object, do so. But otherwise, log15's ext package has a handy RandId function to let you generate what you might call "surrogate keys" They're just random hex identifiers to use for tracing. Back to our Tab example, we would prefer to set up our Logger like so: Now we'll have a unique traceable identifier even across loading new urls, but we'll still be able to see the tab's current url in the log messages. For all Handler functions which can return an error, there is a version of that function which will return no error but panics on failure. They are all available on the Must object. For example: All of the following excellent projects inspired the design of this library: code.google.com/p/log4go github.com/op/go-logging github.com/technoweenie/grohl github.com/Sirupsen/logrus github.com/kr/logfmt github.com/spacemonkeygo/spacelog golang's stdlib, notably io and net/http https://xkcd.com/927/
Registry
-
Source
- Documentation
- JSON
purl: pkg:golang/github.com/inconshreveable/log15
License: Apache-2.0
Latest release: over 2 years ago
First release: over 5 years ago
Namespace: github.com/inconshreveable
Dependent packages: 736
Dependent repositories: 1,236
Stars: 1,082 on GitHub
Forks: 152 on GitHub
Docker dependents: 265
Docker downloads: 423,964,822
See more repository details: repos.ecosyste.ms
Last synced: about 16 hours ago
github.com/nadirhamid/ari/v5 v5.2.6
Golang Asterisk REST Interface (ARI) library29 versions - Latest release: 12 months ago - 1 dependent repositories - 0 stars on GitHub
git.vdb.to/cerc-io/eth-ipfs-state-validator/v5 v5.2.0-alpha
4 versions - Latest release: about 1 year agogithub.com/cerc-io/eth-ipfs-state-validator/v5 v5.2.0-alpha
Tool for validating the completeness of Ethereum state on IPFS4 versions - Latest release: about 1 year ago - 3 dependent packages - 4 stars on GitHub
github.com/QFO6/rev-git v0.1.0
1 version - Latest release: about 1 year ago - 0 stars on GitHubgithub.com/qfo6/rev-git v0.1.0
1 version - Latest release: about 1 year ago - 0 stars on GitHubgithub.com/QFO6/minio-go-uploader v0.1.0
1 version - Latest release: about 1 year ago - 0 stars on GitHubgithub.com/qfo6/minio-go-uploader v0.1.0
1 version - Latest release: about 1 year ago - 0 stars on GitHubgithub.com/qfo6/rev-auth-ldap v0.1.0
1 version - Latest release: about 1 year ago - 0 stars on GitHubgithub.com/qfo6/rev-auth-acc v0.1.0
1 version - Latest release: about 1 year ago - 0 stars on GitHubgithub.com/QFO6/rev-mongo v0.1.0
1 version - Latest release: about 1 year ago - 0 stars on GitHubgithub.com/qfo6/rev-mongo v0.1.0
1 version - Latest release: about 1 year ago - 0 stars on GitHubgithub.phpd.cn/future-architect/vuls v0.25.4
117 versions - Latest release: about 1 year agogithub.com/everfinance/goar v1.6.3
Arweave http client and wallet implemented in go, Arweave SDK53 versions - Latest release: about 1 year ago - 109 stars on GitHub
github.com/everFinance/goar v1.6.3
Arweave http client and wallet implemented in go, Arweave SDK53 versions - Latest release: about 1 year ago - 55 dependent packages - 10 dependent repositories - 130 stars on GitHub
github.com/golangua/telegram-butler v1.0.0
:airplane: Telegram bot for managing GolangUA community1 version - Latest release: about 1 year ago - 2 stars on GitHub
github.com/everVision/everpay-kits v0.0.9
8 versions - Latest release: about 1 year ago - 3 dependent packages - 0 stars on GitHubgithub.com/evervision/everpay-kits v0.0.9
8 versions - Latest release: about 1 year ago - 0 stars on GitHubgithub.com/abakum/ngrokSSH v0.3.4-lw
Helps ssh communicate with a sshd over firewalls via ngrok.com13 versions - Latest release: about 1 year ago - 1 stars on GitHub
github.com/abakum/ngrokssh v0.3.4-lw
Helps ssh communicate with a sshd over firewalls via ngrok.com13 versions - Latest release: about 1 year ago - 1 stars on GitHub
github.com/MoonBaZZe/znn-sdk-go v0.1.0
4 versions - Latest release: about 1 year ago - 2 dependent packages - 1 dependent repositories - 0 stars on GitHubgithub.com/moonbazze/znn-sdk-go v0.1.0
4 versions - Latest release: about 1 year agogithub.ccut.club/future-architect/vuls v0.25.2
115 versions - Latest release: about 1 year agogithub.com/permadao/permaswap v0.0.2
Permaswap2 versions - Latest release: about 1 year ago - 3 stars on GitHub
github.com/permadao/Permaswap v0.0.2
Permaswap2 versions - Latest release: about 1 year ago - 3 stars on GitHub
github.com/w3tools/go-modules v0.100.18
53 versions - Latest release: about 1 year ago - 0 stars on GitHubgit.wxl.best/future-architect/vuls v0.25.1
115 versions - Latest release: about 1 year agogithub.com/fclairamb/go-log v0.5.0
Package log provides a simple interface to handle logging6 versions - Latest release: about 1 year ago - 52 dependent packages - 62 dependent repositories - 3 stars on GitHub
github.com/everfinance/seeding v1.2.5
56 versions - Latest release: over 1 year agogithub.com/ondbyte/ngrok-server v1.0.2
3 versions - Latest release: over 1 year ago - 0 stars on GitHubgithub.com/joaoalves-anchorage/goar v1.5.7
Arweave http client and wallet implemented in go, Arweave SDK1 version - Latest release: over 1 year ago - 0 stars on GitHub
github.skymusic.top/future-architect/vuls v0.24.9
111 versions - Latest release: over 1 year agogithub.com/0xsequence/goar v1.6.0
Arweave http client and wallet implemented in go, Arweave SDK1 version - Latest release: over 1 year ago - 0 stars on GitHub
github.com/inverse-inc/packetfence/go v0.0.0-20240124201631-94c2854b8ebc
PacketFence is a fully supported, trusted, Free and Open Source network access control (NAC) solu...277 versions - Latest release: over 1 year ago - 4 dependent packages - 3 dependent repositories - 1,115 stars on GitHub
github.com/famarks/grafarg v0.0.0-20240118154311-f9049aa366ff
11 versions - Latest release: over 1 year ago - 0 stars on GitHubgithub.com/amdfxlucas/scion-apps v0.7.3
Public repository for SCION applications [updated deps and go1.20.4]10 versions - Latest release: over 1 year ago - 1 dependent repositories - 0 stars on GitHub
github.com/ngrok/kubernetes-ingress-controller v0.0.0-20240116173325-852b6428e967
24 versions - Latest release: over 1 year agogitlab.eclipse.org/eclipse/xfsc/tsa/policy v1.2.1
Policy service exposes policy evaluation endpoints via HTTP API.7 versions - Latest release: over 1 year ago - 0 stars on gitlab.eclipse.org
golang.ngrok.com/ngrok/examples v0.0.0-20240108180018-3808ea4553b8
Embed ngrok secure ingress into your Go apps as a net.Listener with a single line of code.10 versions - Latest release: over 1 year ago - 586 stars on GitHub
github.com/shymega/x-delay v0.0.0-20240108174614-2655eebffa0d
2 versions - Latest release: over 1 year agogithub.com/famarker/grafarg v0.0.0-20240104161148-900be4e9d525
Grafarg is an interactive data analytics and graphical data visualization application. Grafarg be...3 versions - Latest release: over 1 year ago - 0 stars on GitHub
github.com/obamaphony/go-app v0.0.0-20231231162714-f5528e3f16af
4 versions - Latest release: over 1 year ago - 0 stars on GitHubgithub.com/d--j/srs-milter/integration v0.0.0-20231229005822-4604e5f1d460
Mail filter handling SRS address rewriting1 version - Latest release: over 1 year ago - 4 stars on GitHub
github.com/itzg/mc-router v0.0.0-20231225141854-ac3e315a1fc3 💰
Routes Minecraft client connections to backend servers based upon the requested server address27 versions - Latest release: over 1 year ago - 328 stars on GitHub
github.com/dwisiswant0/ngocok v1.0.0
ngrok Collaborator Link — yet another Burp Collaborator alternative for free with ngrok.1 version - Latest release: over 1 year ago - 18 stars on GitHub
github.com/psanford/rom-cam v0.0.0-20231218211824-c17f0c9e1ca8
Record on motion raspberry pi security camera in Go1 version - Latest release: over 1 year ago - 0 stars on GitHub
github.com/owulveryck/goMarkableStream v0.17.1 💰
A utility to stream from a Remarkable2 without hack or third party dependencies30 versions - Latest release: over 1 year ago - 429 stars on GitHub
github.com/owulveryck/gomarkablestream v0.17.1 💰
A utility to stream from a Remarkable2 without hack or third party dependencies30 versions - Latest release: over 1 year ago - 132 stars on GitHub
github.com/go-enjin/website-thisip-fyi v0.0.0-20231216220641-3d1814dc790c
thisip.fyi21 versions - Latest release: over 1 year ago - 0 stars on GitHub
github.com/luxdefi/spacesvm v0.0.15
SpacesVM enables authenticated, hierarchical storage of arbitrary keys/values using any [EIP-712]...15 versions - Latest release: over 1 year ago - 0 stars on GitHub
github.com/ignition-pillar/nomctl v0.0.0-20231208183553-b2ae2a692be0
1 version - Latest release: over 1 year ago - 3 stars on GitHubgithub.com/everfinance/go-everpay v0.2.0
Official Go implementation of the Everpay protocol12 versions - Latest release: over 1 year ago - 0 stars on GitHub
github.com/everFinance/go-everpay v0.2.0
Official Go implementation of the Everpay protocol12 versions - Latest release: over 1 year ago - 3 dependent packages - 1 dependent repositories - 0 stars on GitHub
github.com/everfinance/everpay-go v0.2.0
golang implementation of everpay protocol4 versions - Latest release: over 1 year ago - 0 stars on GitHub
github.com/everFinance/everpay-go v0.2.0
golang implementation of everpay protocol4 versions - Latest release: over 1 year ago - 20 dependent packages - 3 dependent repositories - 0 stars on GitHub
github.com/fryyyyy/fryatog v0.0.0-20231121220846-e0ebd968f9cf
GoLang based IRC bot for looking up MTG Rules/Oracle1 version - Latest release: over 1 year ago - 4 stars on GitHub
github.com/netsys-lab/scion-host v0.0.2-dev
Tooling to install a SCION endhost on various platforms2 versions - Latest release: over 1 year ago - 0 stars on GitHub
github.com/codefresh-io/venona/venonactl v0.0.0-20231109094942-be0736f13ff5
Codefresh runtime-environment agent21 versions - Latest release: over 1 year ago - 38 stars on GitHub
github.com/kevinburke/handlers v0.0.0-20231107221000-2cbf18acad0d 💰
Package handlers implements a number of useful HTTP middlewares. The general format of the middl...6 versions - Latest release: over 1 year ago - 10 dependent packages - 8 dependent repositories - 19 stars on GitHub
github.com/kevinburke/rest v0.0.0-20231107185522-a9c371f90234 💰
Package rest implements responses and a HTTP client for API consumption.6 versions - Latest release: over 1 year ago - 226 dependent packages - 158 dependent repositories - 13 stars on GitHub
github.com/kevinburke/rickover v0.0.0-20231107182459-7ed8402e7e08 💰
Package rickover contains logic for a scheduler and job queue backed by Postgres.5 versions - Latest release: over 1 year ago - 23 stars on GitHub
github.com/huynle/lemonade v0.0.0-20231030110430-928ec4f6abbe
Lemonade is a remote utility tool. (copy, paste and open browser) over TCP.1 version - Latest release: over 1 year ago - 0 stars on GitHub
github.com/abakum/ngrok4com v0.2.1-lw
hub4com GUI and KiTTY helper for configuring remote devices via ngrok by serial port2 versions - Latest release: over 1 year ago - 0 stars on GitHub
github.com/mikeydub/go-gallery v0.0.0-20231025175045-f33c4a9cd6b1
90 versions - Latest release: over 1 year agogithub.com/intob/artube-search v0.0.0-20231023134359-7f25ca7274a2
1 version - Latest release: over 1 year ago - 0 stars on GitHubgithub.com/hvuhsg/goapi v0.0.0-20231019172415-0de1e0134451
GoAPI - A Fast and Easy-to-use Web Framework for Building APIs in Go2 versions - Latest release: over 1 year ago - 3 stars on GitHub
github.com/triggermesh/triggermesh v1.27.0
TriggerMesh is the open-source AWS EventBridge alternative. It provides a unified eventing experi...38 versions - Latest release: over 1 year ago - 7 dependent packages - 4 dependent repositories - 432 stars on GitHub
github.hscsec.cn/triggermesh/triggermesh v1.27.0
38 versions - Latest release: over 1 year agogithub.phpd.cn/triggermesh/triggermesh v1.27.0
38 versions - Latest release: over 1 year agogithub.com/expertonium/twilio-go v0.0.1
Twilio Go library1 version - Latest release: over 1 year ago - 0 stars on GitHub
github.com/abakum/ngrokvnc v0.1.1
9 versions - Latest release: over 1 year agogithub.com/zuruuh/caddy-ngrok-listener v0.0.0-20231011121452-919b707bb8b2 removed
Caddy listener_wrapper to automatically listen on an ngrok tunnel1 version - Latest release: over 1 year ago - 0 stars on GitHub
github.com/kevinburke/twilio-go v0.0.0-20231009225535-38b36b35294d 💰
Package twilio simplifies interaction with the Twilio API. The twilio-go library should be your ...5 versions - Latest release: over 1 year ago - 140 dependent packages - 72 dependent repositories - 137 stars on GitHub
github.com/psanford/photo-backup-lambda v0.0.0-20231007233926-d1d3d7d1b8f7
1 version - Latest release: over 1 year ago - 1 stars on GitHubgithub.com/velour/catbase v0.0.0-20231004142559-c44ada306107
Velour's spirit animal11 versions - Latest release: over 1 year ago - 6 stars on GitHub
github.com/divyam234/bolt-ui v0.0.0-20230921071413-2883ade266c0
1 version - Latest release: over 1 year agogithub.com/dstor-team/arsyncer v0.0.0-20230920044759-769184bba731
arweave txs syncer golang implementation2 versions - Latest release: over 1 year ago - 0 stars on GitHub
github.com/CyCoreSystems/ari-proxy/v5 v5.3.1
NATS or RabbitMQ message bus Asterisk REST Interface proxy system implemented in Go13 versions - Latest release: over 1 year ago - 2 dependent repositories - 60 stars on GitHub
github.com/mohammed90/caddy-ngrok-listener v0.1.2
Caddy listener_wrapper to automatically listen on an ngrok tunnel3 versions - Latest release: over 1 year ago - 13 stars on GitHub
github.com/trendev/ngrok-file-server v1.1.0
fast as lightning, secure tiny file server, based on ngrok and golang8 versions - Latest release: over 1 year ago - 0 stars on GitHub
github.com/0xPolygonID/onchain-issuer-demo v0.0.0-20230914113529-5ce25cbcedc0
1 version - Latest release: over 1 year ago - 0 stars on GitHubgithub.com/psanford/tpm-ssh-ca v0.0.0-20230912171925-775fcd22640a
1 version - Latest release: over 1 year ago - 5 stars on GitHubgithub.com/0xRitter/go-modules v0.0.0-20230912170115-319c20863921
1 version - Latest release: over 1 year ago - 0 stars on GitHubgithub.com/Vivino/go-loggers-mapper-revel v0.0.0-20230907094736-af446a6fb827
Golang Loggers mapper for Revel.5 versions - Latest release: over 1 year ago - 0 stars on GitHub
github.com/knqyf263/gost v0.4.5
20 versions - Latest release: over 1 year ago - 8 dependent packages - 9 dependent repositoriesgithub.com/permadao/dnotion v0.0.0-20230901073840-5fcf58e30ef3
2 versions - Latest release: almost 2 years ago - 0 stars on GitHubgithub.com/marksalpeter/go-qstash v0.0.0-20230826203922-2b75b536d235
Package qstash is a go library for the (QStash) https://upstash.com/docs/qstash/overall/getstarte...1 version - Latest release: almost 2 years ago - 2 stars on GitHub
github.com/0xPolygonID/onchain-issuer-integration-demo/server v0.0.0-20230824171638-d5c0626d4825
1 version - Latest release: almost 2 years ago - 1 stars on GitHubgithub.com/ignition-pillar/go-zdk v0.1.0
3 versions - Latest release: almost 2 years ago - 1 dependent repositories - 1 stars on GitHubgithub.com/hypercore-one/go-zenon v0.1.0-hc1
7 versions - Latest release: almost 2 years ago - 0 stars on GitHubgithub.com/netsec-ethz/bootstrapper v0.0.7
7 versions - Latest release: almost 2 years ago - 1 dependent repositories - 0 stars on GitHubgithub.com/bots-garden/capsule/capsule-cli v0.0.0-20230811070628-fd84699bdcbe
Package main, the next generation of the Capsule project2 versions - Latest release: almost 2 years ago - 286 stars on GitHub
github.com/bots-garden/capsule/capsule-http v0.0.0-20230811070628-fd84699bdcbe
Package main, the next generation of the Capsule project1 version - Latest release: almost 2 years ago - 1 dependent package - 282 stars on GitHub
github.com/iamelevich/pocketbase-plugin-ngrok v0.13.10
Plugin for Pocketbase that allow you expose it with ngrok7 versions - Latest release: almost 2 years ago - 0 stars on GitHub
github.com/ahhxfeng/goar v0.0.0-20230730075758-7b5f24d4f649
Arweave http client and wallet implemented in go, Arweave SDK1 version - Latest release: almost 2 years ago - 1 dependent repositories - 0 stars on GitHub
gitlab.com/dk-group-proyects/nghfs v0.0.0-20230725185745-c15384f416fe
1 version - Latest release: almost 2 years agogithub.com/amtelco-software/ari/v6 v6.0.2
Golang Asterisk REST Interface (ARI) library2 versions - Latest release: almost 2 years ago - 0 stars on GitHub
github.com/Amtelco-Software/ari/v6 v6.0.2
Package ari provides a Go library for interacting with Asterisk ARI2 versions - Latest release: almost 2 years ago - 0 stars on GitHub
github.com/eosswedenorg/antelope-api-healthcheck v1.4.6
Antelope API healthcheck for HAProxy over TCP.24 versions - Latest release: almost 2 years ago - 1 stars on GitHub
github.com/eosswedenorg/eos-api-healthcheck v1.4.6
24 versions - Latest release: almost 2 years agogithub.com/eosswedenorg/eosio-api-healthcheck v1.4.6
24 versions - Latest release: almost 2 years agoCheck this option to include packages that no longer depend on this package in their latest version but previously did.