What is y’all?
y’all is a logging library written for Go. There are many logging libraries written for Go. There are many are that are probably objectively better than this one. But this is yet another leveled logger.
y’all focuses on a few key areas and largely faffs about with all the other decisions to be made. Here are the things it wants to do really, really well:
- Use an environment variable or command line flag to switch between different verbosity levels.
- Have log output be easily parseable by machines, because machines are too useful to make logs opaque to them. And regexes make us squeamish.
- Support Stackdriver Logging on Google Cloud. Because that’s where we host our stuff. And what we want to use. We’ll try to make this thing so other people can use it, but just being up-front about it: we’re doing this mostly to scratch our own itches.
- Be testable. Something has gone horribly wrong in your life if you’re testing log output, but we’re certainly not going to claim it’s unreasonable to expect things to go horribly wrong.
- Be pretty. Pretty logs are a nice-to-have thing, y’know?
- Get as much mileage out of “y’all” puns as we possibly can.
y’all is also an objectively better word than “guys” for a group of people that is not, in fact, 100% male.
How do I use y’all?
Check out the GoDoc for some examples and the API reference.
Who are y’all?
We’re the people behind Impractical Labs. We’re a silly “company” that doesn’t do much, but still does nonsense like this anyways.
y’all is open source and liberally licensed. You can find it on GitHub if you want to look at the code, file an issue, or open a PR.