PR #45
- Add log.Start(ctx) to include duration=123.11ms in the following log output that use it.
PR #39
-
Add monitoring InfluxDB client that sources InfluxDB credentials from Vault.
-
Allow creation of InfluxDB-backed monitoring client with custom InfluxDB transport client.
-
Introduce public Vault client interface (instead of using
github.com/hashicorp/vault/api.Client
directly) -
Make Vault client available from service context
-
Allow subscription to Vault (re-)authentication via
appkit/credentials/vault.Client.OnAuth
-
Revoke Vault auth lease when service context is closed
PR #38
- Add support for
VAULT_AUTHN_DISABLED
to stop appkit/service automatically attempting to authenticate with Vault.
PR #37
- Add package appkit/service
PR #19
- Add Package appkit/credentials
PR #36
errornotifier.NewAirbrakeNotifier
func now returnsio.Closer
to wait send data to Aribrake.- Add a new parameter
context
toerrornotifier.Notifier.Notify
allow add context when callNotify
.
- Upgrade Airbrake package.
- Change
airbrakeNotifier.Notify
func to async. - Add log req_id and span_context to
errornotifier.NotifyOnPanic
andRecover
middleware.
PR #33
monitoring.WithMonitor
middleware now collectsX-Via
request header value asvia
tag value.
PR #31
- Log request id in trace log.
- Log trace id in InfluxDB.
- Add
service-name
config for InfluxDB.
PR #30
monitoring.NewInfluxdbMonitor
now returns a "close"func()
to allow termination of InfluxDB buffer introduced in #25.
server.GoListenAndServe
gives control over shut-down of the HTTP server.
-
server.ListenAndServe
now delegates the HTTP server to this function andserver.GoListenAndServe
and manually blocks forever by deadlocking itself. This preserves the basic behaviour, but it might change howListenAndServe
responded to OS signals. -
Tracing on monitoring middleware was removed. Tracing now occurs on the InfluxDB monitor buffer goroutine that sends batches of points to InfluxDB.
PR #25
- Add batch write (buffer) for monitoring/influxdb.
PR #20
-
Add
tracing
package -
Make
errornotifier
andmonitoring
middleware trace API requests
PR #27
- Change influxdb client import path. Detail in issue
PR #17
- Don't log SQL query values in Gorm log adapter
PR #16
-
Replace the
sessions.Config
withsessions.CookieStoreConfig
, thesessions.CookieStoreConfig
is compatible withjinzhu/configor
, change the struct to enableSecure
andHttpOnly
by default and extend the struct to make it general. -
Add
sessions.NewCookieStore
to easy new agorilla/sessions.CookieStore
withsessions.Config
.
PR #14
-
Add
server.SecureMiddleware
for CSRF/CORS API configuration. -
Add
log.NewTestLogger
for stable log output when testing (ie. no timestamps or stack references)
PR #12
- Upgrade
influxdb.Client
tov2
version to fix the monitoring/influxdb monitor broken issue due to the old version ofinfluxdb.Client
being deprecated.
PR #9
- Fix
contexts.HTTPStatus
to assume that the response ishttp.StatusOK
, rather than0
.
PR #6
- Add
log.WrapError
tolog
PR #2
- Add
encryptedbox
package
PR #43
- Add
APPKIT_LOG_HUMAN
environment flag to output logs with better formatted for human
PR #42
- Add Package appkit/sessions
- Changed monitoring interface to accept data fields in addition to tags.
- Monitoring middleware now logs
req_id
as a field, rather than a tag, to avoid generating InfluxDB series with immense cardinality.
PR #35
- Add Package appkit/kerrs
- Add
log.WithError
to log to be able to log appkit errors with ease
PR #33
log.FromContext
panic when receiving a nil context bug
PR #32
PR #30
monitoring
package
PR #29 Context cleanup
- Move Gorm/DB context functions from
contexts
toappkit/db
- Move logging context functions from
contexts
toappkit/log
- Move tracing context functions from
contexts
tocontexts/trace