Introduces two new components, a HTTP and a S3 audit logger, which provide a function that, when called, will write the provided clojure map to the destination.
I know we wanted to use timbre and provide a single audit log component, but this structure didn't make sense anymore when I realized we need access tokens for the HTTP component and it's thus dependent on the token-refreshing component. I dropped timbre afterwards because I didn't see the benefit anymore - we don't use the string serialization of it, we write our own appenders...
Could be discussed:
put important part of log function in a go block so that it's async - the application doesn't care about the result anyways / can't/won't handle errors
make http audit logger less dependent on oauth component, so that it can be used with unsecured APIs
make http method to use in http audit logger configurable
Fixes #79
Introduces two new components, a
HTTP
and aS3
audit logger, which provide a function that, when called, will write the provided clojure map to the destination.I know we wanted to use timbre and provide a single audit log component, but this structure didn't make sense anymore when I realized we need access tokens for the
HTTP
component and it's thus dependent on the token-refreshing component. I dropped timbre afterwards because I didn't see the benefit anymore - we don't use the string serialization of it, we write our own appenders...Could be discussed:
log
function in ago
block so that it's async - the application doesn't care about the result anyways / can't/won't handle errors