Skip to content

Latest commit

 

History

History
193 lines (109 loc) · 6.14 KB

CHANGELOG.md

File metadata and controls

193 lines (109 loc) · 6.14 KB

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

Breaking Changes

  • errornotifier.NewAirbrakeNotifier func now returns io.Closer to wait send data to Aribrake.
  • Add a new parameter context to errornotifier.Notifier.Notify allow add context when call Notify.

Changes

  • Upgrade Airbrake package.
  • Change airbrakeNotifier.Notify func to async.
  • Add log req_id and span_context to errornotifier.NotifyOnPanic and Recover middleware.

PR #33

  • monitoring.WithMonitor middleware now collects X-Via request header value as via tag value.

PR #31

  • Log request id in trace log.
  • Log trace id in InfluxDB.
  • Add service-name config for InfluxDB.

PR #30

Breaking Changes

  • monitoring.NewInfluxdbMonitor now returns a "close" func() to allow termination of InfluxDB buffer introduced in #25.

Added

  • server.GoListenAndServe gives control over shut-down of the HTTP server.

Changed Behaviour

  • server.ListenAndServe now delegates the HTTP server to this function and server.GoListenAndServe and manually blocks forever by deadlocking itself. This preserves the basic behaviour, but it might change how ListenAndServe 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 and monitoring 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 with sessions.CookieStoreConfig, the sessions.CookieStoreConfig is compatible with jinzhu/configor, change the struct to enable Secure and HttpOnly by default and extend the struct to make it general.

  • Add sessions.NewCookieStore to easy new a gorilla/sessions.CookieStore with sessions.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 to v2 version to fix the monitoring/influxdb monitor broken issue due to the old version of influxdb.Client being deprecated.

PR #9

  • Fix contexts.HTTPStatus to assume that the response is http.StatusOK, rather than 0.

PR #6

  • Add log.WrapError to log

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

Breaking changes

Changed behaviour

  • Monitoring middleware now logs req_id as a field, rather than a tag, to avoid generating InfluxDB series with immense cardinality.

PR #35

Added

  • Add Package appkit/kerrs
  • Add log.WithError to log to be able to log appkit errors with ease

PR #33

Added

Fixed

  • log.FromContext panic when receiving a nil context bug

PR #32

Added

PR #30

Added

  • monitoring package

PR #29 Context cleanup

Breaking changes

  • Move Gorm/DB context functions from contexts to appkit/db
  • Move logging context functions from contexts to appkit/log
  • Move tracing context functions from contexts to contexts/trace