Minimal logging server & clients
Having solved backups, I attacked the the next important thing that gets in the way of building actual functionality: error logging.
I've had some trouble setting up Sentry (possibly more my fault than Sentry's, but it does much more than I need so it's more work). I also tried Loggly which doesn't need server setup, but it captured mostly irrelevant syslog stuff and I'd need to pay a lot to keep logs for more than 7 days.
So I figured I'd make something really simple, free and customizable. For small projects, all I really want is to see if problems occur, which is pretty simply, so I feel the software should be simple too. If you get a million unique visitors and 10 thousand log entries per day, maybe use another solution.
The server from the package currently does several things:
- Show logged messages, which you can filter by level.
- Resolve messages to remove them from the list (can be undone).
- Use secret keys as authentication to prevent unauthorized logs.
- Easily log from multiple sources and revoke keys for specific sources.
- Logs some meta info, like who resolved an entry and which IP submitted it.
In essence, logging is simply a POST request with an authentication token:
curl --silent --show-error --request POST 'https://example.com/log/add/' \ --data-urlencode "description=$2" --data-urlencode "status=warn" \ --data-urlencode 'key=DXKIrRzSmo81QTnmaWhMkg7U8ndqtux5';
but there are clients (Django, javascripts) to make sure you don't need to do this yourself.
Sounds useful? Give it a try! It's all explained in the readme.
Comments
No comments yet
You need to be logged in to comment.