Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { // URL to Cryostat's web server ServerURL *url.URL // Bearer token to authenticate with Cryostat AccessToken *string // Certificate of CA to trust, in PEM format CACertificate []byte // JMX authentication credentials JMXCredentials *JMXAuthCredentials }
Config stores configuration options to connect to Cryostat's web server
type CryostatClient ¶
type CryostatClient interface { ListRecordings(target *TargetAddress) ([]RecordingDescriptor, error) DumpRecording(target *TargetAddress, name string, seconds int, events []string) error StartRecording(target *TargetAddress, name string, events []string) error StopRecording(target *TargetAddress, name string) error DeleteRecording(target *TargetAddress, name string) error SaveRecording(target *TargetAddress, name string) (*string, error) ListSavedRecordings() ([]SavedRecording, error) DeleteSavedRecording(jfrFile string) error ListEventTypes(target *TargetAddress) ([]operatorv1beta1.EventInfo, error) ListTemplates(target *TargetAddress) ([]operatorv1beta1.TemplateInfo, error) }
CryostatClient contains methods for interacting with Cryostats REST API
func NewHTTPClient ¶
func NewHTTPClient(config *Config) (CryostatClient, error)
NewHTTPClient creates a client to communicate with Cryostat over HTTP(S)
type JMXAuthCredentials ¶
type JMXAuthCredentials struct { // JMX authentication username Username string // JMX authentication password Password string }
JMXAuthCredentials holds the JMX authentication credentials to send along with requests
type RecordingDescriptor ¶
type RecordingDescriptor struct { // An identifier used by the JVM to uniquely identify a recording ID int64 `json:"id"` // Name of the recording specified during creation Name string `json:"name"` // State of the recording within its lifecycle State string `json:"state"` // Time when the recording first started, in milliseconds since Unix epoch StartTime int64 `json:"startTime"` // How long the recording was configured to run for, in milliseconds Duration int64 `json:"duration"` // Whether the recording was configured to record indefinitely Continuous bool `json:"continuous"` // Whether this recording was dumped to disk in the host containing the JVM ToDisk bool `json:"toDisk"` // The maximum configured size of the recording file MaxSize int64 `json:"maxSize"` // The maximum configured age of recorded events MaxAge int64 `json:"maxAge"` // URL to download the raw flight recording file DownloadURL string `json:"downloadUrl"` // URL to the automated analysis report for this recording ReportURL string `json:"reportUrl"` }
RecordingDescriptor contains various metadata for a particular flight recording retrieved from the JVM
type SavedRecording ¶
type SavedRecording struct { Name string `json:"name"` DownloadURL string `json:"downloadUrl"` ReportURL string `json:"reportUrl"` }
SavedRecording represents a recording file that has been archived in persistent storage by Container JFR
type TargetAddress ¶
TargetAddress contains an address that Container JFR can use to connect to a particular JVM
func (TargetAddress) String ¶
func (target TargetAddress) String() string
Click to show internal directories.
Click to hide internal directories.