- chore(exthttp): add option to reduce the default logging for http handlers
- fix: prevent data races in signal handler registration
- chore: added method to remove signal handler (for testing purposes)
- feat: graceful extension shutdown
- fix: make ExtensionError.Error() include the detail
- feat: add WrapError()
a# 1.8.17
- fix: add dummy runtime info on windows
- feat: add error details to recovery handler
- feat: add MustHaveValue helper
- fix: host fqdn is not properly read
- add extruntime.getHostname to provide hostname and fqdn of host
- func to get UNameInformation
- prevent concurrent map writes in
extcmd
- provide http handler to deal with ETags
- log gomaxprocs in debug information
- log properly formatted timestamps in json logs
- use structured logging for http request logging
- remove broken seccomp stuff from extruntime.LogRuntimeInformation
- add LogRuntimeInformation
- log tls errors on debug
- Support loading client certificates from directories
- reload tls server key pair if the file changes
- only log response body in trace level
- add seconds and milliseconds to log output
- add support for listening on unix domain sockets instead of TCP ports
- log output is now colorized by default if the output is a terminal; can be overriden using
STEADYBIT_LOG_COLOR
- only log caller when using debug level
- Add Caller to logging
- Added extfile with some file helpers
- HTTP-Request-Logger: do not read multipart bodies
- added util methods mainly for tests (JsonMangle)
- reduces logging for http requests
- added util methods for type conversions
- logging for readiness state
- allow overriding port for probes to be overrinden via STEADYBIT_EXTENSION_HEALTH_PORT
- start liveness and readiness probe on different port
- add exthttp.LogRequestWithLevel
- default readiness probe is true
- use atomic variable for readiness switch
- don't use generics for the conversion helper
- added first draft of readiness and liveness probe helpers
- Let ExtensionError implement the error interface
- Set timeout for handlers if Request-Timeout header is set.
- Always log errors written as http response
- Don't print "0 bytes" when there is no request body
- Trim leading
v
character inextbuild.GetSemverVersionStringOrUnknown()
for platform compatibility.
-
Support
extbuild.ExtensionName
,extbuild.Version
andextbuild.Revision
to retrieve build information. You have to fill these fields at build time using:go build -ldflags="-X 'github.com/steadybit/extension-kit/extbuild.ExtensionName=extension-prometheus' -X 'github.com/steadybit/extension-kit/extbuild.Version=v1.0.0' -X 'github.com/steadybit/extension-kit/extbuild.Revision=e3f9616ba2e838d0d3a4472cd0d0cb2e39a06e8f'"
-
Extensions can now call
extbuild.PrintBuildInformation()
within theirmain()
function to generate useful debugging information. -
Extensions can now call
extbuild.GetSemverVersionStringOrUnknown()
to get a fitting version number for action and type definitions.
- Added a new utility function
Listen
toexthttp
package to listen on a port and serve HTTP requests. The function also takes care of establishing an HTTPS server with mutual TLS when instructed to through environment variables.
- Support for the
STEADYBIT_LOG_FORMAT
env variable. When set tojson
, extensions will log JSON lines to stderr.
- adds conversion helper to
extconversion
. This is helpful to encode and decode ActionKit's state.
- debug messages in
exthttp
are missing the request ID.
- stack overflow error in logging HTTP writer
exthttp
will now log request and response bodies on debug level.
- the active log level can now be configured through the
STEADYBIT_LOG_LEVEL
environment variable.
- add utilities to work with child processes across incoming HTTP calls, e.g., for ActionKit users
- fix missing conditional when logging errors
- Initial release