Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BehaviorOnPanic ¶
BehaviorOnPanic is a helper for setting the crash mode of OpenShift when a panic is caught. It returns a function that should be the defer handler for the caller.
func InitLogrus ¶
func InitLogrus(level string)
InitLogrus initializes logrus by setting a loglevel for it.
func InitLogrusFromKlog ¶
func InitLogrusFromKlog()
InitLogrusFromKlog sets the logrus trace level based on the klog trace level.
func StartProfiler ¶
func StartProfiler()
StartProfiler starts the golang profiler on a port if `web` is specified. It uses the "standard" openshift env vars
Types ¶
type SentryMonitor ¶
type SentryMonitor struct {
// contains filtered or unexported fields
}
SentryMonitor encapsulates a Sentry client and set of default tags
func NewSentryMonitor ¶
func NewSentryMonitor(url string, version version.Info) (*SentryMonitor, error)
NewSentryMonitor creates a class that can capture panics and errors from OpenShift and Kubernetes that can roll up to a Sentry server.
func (*SentryMonitor) CaptureError ¶
func (m *SentryMonitor) CaptureError(err error)
CaptureError is used by the Sentry client to capture errors
func (*SentryMonitor) CapturePanic ¶
func (m *SentryMonitor) CapturePanic(capture interface{})
CapturePanic is used by the Sentry client to capture panics
func (*SentryMonitor) CapturePanicAndWait ¶
func (m *SentryMonitor) CapturePanicAndWait(capture interface{}, until time.Duration)
CapturePanicAndWait waits until either the Sentry client captures a panic or the provided time expires
type Stop ¶
type Stop interface {
Stop()
}
Stop is a function to defer in your main call to provide profile info.
func Profile ¶
Profile returns an interface to defer for a profile: `defer serviceability.Profile(os.Getenv("OPENSHIFT_PROFILE")).Stop()` is common. Suffixing the mode with `-tmp` will have the profiler write the run to a temporary directory with a unique name, which is useful when running the same command multiple times.