Documentation
¶
Index ¶
- Constants
- func ToPtr[T any](v T) *T
- type APIError
- type AWSIntegration
- type AWSIntegrationService
- type Alert
- type AlertGroupSetting
- type AlertLog
- type AlertsResp
- type Attribute
- type AttributeValue
- type BlockDevice
- type CPU
- type Channel
- type CheckConfig
- type CheckReport
- type CheckReports
- type CheckSource
- type CheckStatus
- type Client
- func (c *Client) BulkRetireHosts(ids []string) error
- func (c *Client) BulkUpdateHostStatuses(ids []string, status string) error
- func (c *Client) CloseAlert(alertID string, reason string) (*Alert, error)
- func (c *Client) CreateAWSIntegration(param *CreateAWSIntegrationParam) (*AWSIntegration, error)
- func (c *Client) CreateAWSIntegrationExternalID() (string, error)
- func (c *Client) CreateAlertGroupSetting(param *AlertGroupSetting) (*AlertGroupSetting, error)
- func (c *Client) CreateChannel(param *Channel) (*Channel, error)
- func (c *Client) CreateDashboard(param *Dashboard) (*Dashboard, error)
- func (c *Client) CreateDowntime(param *Downtime) (*Downtime, error)
- func (c *Client) CreateGraphAnnotation(annotation *GraphAnnotation) (*GraphAnnotation, error)
- func (c *Client) CreateGraphDefs(graphDefs []*GraphDefsParam) error
- func (c *Client) CreateHost(param *CreateHostParam) (string, error)
- func (c *Client) CreateInvitation(param *Invitation) (*Invitation, error)
- func (c *Client) CreateMonitor(param Monitor) (Monitor, error)
- func (c *Client) CreateNotificationGroup(param *NotificationGroup) (*NotificationGroup, error)
- func (c *Client) CreateRole(serviceName string, param *CreateRoleParam) (*Role, error)
- func (c *Client) CreateService(param *CreateServiceParam) (*Service, error)
- func (c *Client) DeleteAWSIntegration(awsIntegrationID string) (*AWSIntegration, error)
- func (c *Client) DeleteAlertGroupSetting(id string) (*AlertGroupSetting, error)
- func (c *Client) DeleteChannel(channelID string) (*Channel, error)
- func (c *Client) DeleteDashboard(dashboardID string) (*Dashboard, error)
- func (c *Client) DeleteDowntime(downtimeID string) (*Downtime, error)
- func (c *Client) DeleteGraphAnnotation(annotationID string) (*GraphAnnotation, error)
- func (c *Client) DeleteGraphDef(name string) error
- func (c *Client) DeleteHostMetaData(hostID, namespace string) error
- func (c *Client) DeleteMonitor(monitorID string) (Monitor, error)
- func (c *Client) DeleteNotificationGroup(id string) (*NotificationGroup, error)
- func (c *Client) DeleteRole(serviceName, roleName string) (*Role, error)
- func (c *Client) DeleteRoleContext(ctx context.Context, serviceName, roleName string) (*Role, error)
- func (c *Client) DeleteRoleMetaData(serviceName, roleName, namespace string) error
- func (c *Client) DeleteRoleMetaDataContext(ctx context.Context, serviceName, roleName, namespace string) error
- func (c *Client) DeleteService(serviceName string) (*Service, error)
- func (c *Client) DeleteServiceContext(ctx context.Context, serviceName string) (*Service, error)
- func (c *Client) DeleteServiceGraphDef(serviceName string, graphName string) error
- func (c *Client) DeleteServiceGraphDefContext(ctx context.Context, serviceName string, graphName string) error
- func (c *Client) DeleteServiceMetaData(serviceName, namespace string) error
- func (c *Client) DeleteServiceMetaDataContext(ctx context.Context, serviceName, namespace string) error
- func (c *Client) DeleteUser(userID string) (*User, error)
- func (c *Client) DeleteUserContext(ctx context.Context, userID string) (*User, error)
- func (c *Client) FetchHostMetricValues(hostID string, metricName string, from int64, to int64) ([]MetricValue, error)
- func (c *Client) FetchLatestMetricValues(hostIDs []string, metricNames []string) (LatestMetricValues, error)
- func (c *Client) FetchServiceMetricValues(serviceName string, metricName string, from int64, to int64) ([]MetricValue, error)
- func (c *Client) FindAWSIntegration(awsIntegrationID string) (*AWSIntegration, error)
- func (c *Client) FindAWSIntegrations() ([]*AWSIntegration, error)
- func (c *Client) FindAlertGroupSettings() ([]*AlertGroupSetting, error)
- func (c *Client) FindAlertLogs(alertId string, params *FindAlertLogsParam) (*FindAlertLogsResp, error)
- func (c *Client) FindAlerts() (*AlertsResp, error)
- func (c *Client) FindAlertsByNextID(nextID string) (*AlertsResp, error)
- func (c *Client) FindChannels() ([]*Channel, error)
- func (c *Client) FindDashboard(dashboardID string) (*Dashboard, error)
- func (c *Client) FindDashboards() ([]*Dashboard, error)
- func (c *Client) FindDowntimes() ([]*Downtime, error)
- func (c *Client) FindGraphAnnotations(service string, from int64, to int64) ([]*GraphAnnotation, error)
- func (c *Client) FindHost(hostID string) (*Host, error)
- func (c *Client) FindHostByCustomIdentifier(customIdentifier string, param *FindHostByCustomIdentifierParam) (*Host, error)
- func (c *Client) FindHosts(param *FindHostsParam) ([]*Host, error)
- func (c *Client) FindInvitations() ([]*Invitation, error)
- func (c *Client) FindMonitors() ([]Monitor, error)
- func (c *Client) FindNotificationGroups() ([]*NotificationGroup, error)
- func (c *Client) FindRoles(serviceName string) ([]*Role, error)
- func (c *Client) FindServices() ([]*Service, error)
- func (c *Client) FindUsers() ([]*User, error)
- func (c *Client) FindWithClosedAlerts() (*AlertsResp, error)
- func (c *Client) FindWithClosedAlertsByNextID(nextID string) (*AlertsResp, error)
- func (c *Client) GetAlert(alertID string) (*Alert, error)
- func (c *Client) GetAlertGroupSetting(id string) (*AlertGroupSetting, error)
- func (c *Client) GetHostMetaData(hostID, namespace string) (*HostMetaDataResp, error)
- func (c *Client) GetHostMetaDataNameSpaces(hostID string) ([]string, error)
- func (c *Client) GetMonitor(monitorID string) (Monitor, error)
- func (c *Client) GetOrg() (*Org, error)
- func (c *Client) GetRoleMetaData(serviceName, roleName, namespace string) (*RoleMetaDataResp, error)
- func (c *Client) GetRoleMetaDataNameSpaces(serviceName, roleName string) ([]string, error)
- func (c *Client) GetServiceMetaData(serviceName, namespace string) (*ServiceMetaDataResp, error)
- func (c *Client) GetServiceMetaDataNameSpaces(serviceName string) ([]string, error)
- func (c *Client) GetTrace(traceID string) (*TraceResponse, error)
- func (c *Client) GetTraceContext(ctx context.Context, traceID string) (*TraceResponse, error)
- func (c *Client) ListAWSIntegrationExcludableMetrics() (*ListAWSIntegrationExcludableMetrics, error)
- func (c *Client) ListDbQueryStats(param *ListDbQueryStatsParam) (*DbQueryStatsPageConnection, error)
- func (c *Client) ListDbQueryStatsContext(ctx context.Context, param *ListDbQueryStatsParam) (*DbQueryStatsPageConnection, error)
- func (c *Client) ListHTTPServerStats(param *ListHTTPServerStatsParam) (*HTTPServerStatsPageConnection, error)
- func (c *Client) ListHTTPServerStatsContext(ctx context.Context, param *ListHTTPServerStatsParam) (*HTTPServerStatsPageConnection, error)
- func (c *Client) ListHostMetricNames(hostID string) ([]string, error)
- func (c *Client) ListMonitoredStatues(hostID string) ([]MonitoredStatus, error)
- func (c *Client) ListServiceMetricNames(serviceName string) ([]string, error)
- func (c *Client) ListTraces(params *ListTracesParam) (*ListTracesResponse, error)
- func (c *Client) ListTracesContext(ctx context.Context, params *ListTracesParam) (*ListTracesResponse, error)
- func (c *Client) ListTracesSeq(ctx context.Context, params *ListTracesParam) iter.Seq2[*ListTracesResult, error]
- func (c *Client) PostCheckReports(checkReports *CheckReports) error
- func (c *Client) PostHostMetricValues(metricValues []*HostMetricValue) error
- func (c *Client) PostHostMetricValuesByHostID(hostID string, metricValues []*MetricValue) error
- func (c *Client) PostJSON(path string, payload interface{}) (*http.Response, error)deprecated
- func (c *Client) PostServiceMetricValues(serviceName string, metricValues []*MetricValue) error
- func (c *Client) PutHostMetaData(hostID, namespace string, metadata HostMetaData) error
- func (c *Client) PutJSON(path string, payload interface{}) (*http.Response, error)deprecated
- func (c *Client) PutRoleMetaData(serviceName, roleName, namespace string, metadata RoleMetaData) error
- func (c *Client) PutServiceMetaData(serviceName, namespace string, metadata ServiceMetaData) error
- func (c *Client) Request(req *http.Request) (resp *http.Response, err error)
- func (c *Client) RetireHost(hostID string) error
- func (c *Client) UpdateAWSIntegration(awsIntegrationID string, param *UpdateAWSIntegrationParam) (*AWSIntegration, error)
- func (c *Client) UpdateAlert(alertID string, param UpdateAlertParam) (*UpdateAlertResponse, error)
- func (c *Client) UpdateAlertGroupSetting(id string, param *AlertGroupSetting) (*AlertGroupSetting, error)
- func (c *Client) UpdateChannel(channelId string, param *Channel) (*Channel, error)
- func (c *Client) UpdateChannelContext(ctx context.Context, channelID string, param *Channel) (*Channel, error)
- func (c *Client) UpdateDashboard(dashboardID string, param *Dashboard) (*Dashboard, error)
- func (c *Client) UpdateDowntime(downtimeID string, param *Downtime) (*Downtime, error)
- func (c *Client) UpdateGraphAnnotation(annotationID string, annotation *GraphAnnotation) (*GraphAnnotation, error)
- func (c *Client) UpdateHost(hostID string, param *UpdateHostParam) (string, error)
- func (c *Client) UpdateHostRoleFullnames(hostID string, roleFullnames []string) error
- func (c *Client) UpdateHostStatus(hostID string, status string) error
- func (c *Client) UpdateMonitor(monitorID string, param Monitor) (Monitor, error)
- func (c *Client) UpdateNotificationGroup(id string, param *NotificationGroup) (*NotificationGroup, error)
- type Cloud
- type CreateAWSIntegrationParam
- type CreateHostParam
- type CreateRoleParam
- type CreateServiceParam
- type Dashboard
- type DbQueryStats
- type DbQueryStatsPageConnection
- type Downtime
- type DowntimeRecurrence
- type DowntimeRecurrenceType
- type DowntimeWeekday
- type Event
- type FileSystem
- type FindAlertLogsParam
- type FindAlertLogsResp
- type FindHostByCustomIdentifierParam
- type FindHostsParam
- type FormatRule
- type Graph
- type GraphAnnotation
- type GraphDefsMetric
- type GraphDefsParam
- type HTTPServerStats
- type HTTPServerStatsPageConnection
- type HeaderField
- type Host
- type HostMeta
- type HostMetaData
- type HostMetaDataResp
- type HostMetricValue
- type Interface
- type Invitation
- type Kernel
- type LatestMetricValues
- type Layout
- type Link
- type ListAWSIntegrationExcludableMetrics
- type ListDbQueryStatsParam
- type ListHTTPServerStatsParam
- type ListTracesParam
- type ListTracesParamStatusCode
- type ListTracesResponse
- type ListTracesResult
- type Memory
- type Mentions
- type Metric
- type MetricValue
- type Monitor
- type MonitorAnomalyDetection
- type MonitorConnectivity
- type MonitorExpression
- type MonitorExternalHTTP
- type MonitorHostMetric
- type MonitorQuery
- type MonitorServiceMetric
- type MonitoredStatus
- type MonitoredStatusDetail
- type NotificationGroup
- type NotificationGroupMonitor
- type NotificationGroupService
- type NotificationLevel
- type OrderDirection
- type Org
- type PrioritizedLogger
- type Range
- type ReferenceLine
- type Resource
- type Role
- type RoleMetaData
- type RoleMetaDataResp
- type Roles
- type Scope
- type Service
- type ServiceMetaData
- type ServiceMetaDataResp
- type Span
- type SpanKind
- type Status
- type StatusCode
- type TraceAttributeFilter
- type TraceAttributeOperator
- type TraceAttributeValueType
- type TraceOrder
- type TraceOrderColumn
- type TraceResponse
- type UpdateAWSIntegrationParam
- type UpdateAlertParam
- type UpdateAlertResponse
- type UpdateHostParam
- type User
- type Widget
Constants ¶
const ( // HostStatusWorking represents "working" status HostStatusWorking = "working" // HostStatusStandby represents "standby" status HostStatusStandby = "standby" // HostStatusMaintenance represents "maintenance" status HostStatusMaintenance = "maintenance" // HostStatusPoweroff represents "poeroff" status HostStatusPoweroff = "poweroff" )
const ( ValueTypeString = "string" ValueTypeBool = "bool" ValueTypeInt = "int" ValueTypeDouble = "double" ValueTypeArray = "array" ValueTypeKvlist = "kvlist" ValueTypeBytes = "bytes" ValueTypeEmpty = "empty" )
AttributeValue type constants
Variables ¶
This section is empty.
Functions ¶
Types ¶
type AWSIntegration ¶ added in v0.18.0
type AWSIntegration struct {
ID string `json:"id"`
Name string `json:"name"`
Memo string `json:"memo"`
Key string `json:"key,omitempty"`
RoleArn string `json:"roleArn,omitempty"`
ExternalID string `json:"externalId,omitempty"`
Region string `json:"region"`
IncludedTags string `json:"includedTags"`
ExcludedTags string `json:"excludedTags"`
Services map[string]*AWSIntegrationService `json:"services"`
}
AWSIntegration AWS integration information
type AWSIntegrationService ¶ added in v0.18.0
type AWSIntegrationService struct {
Enable bool `json:"enable"`
Role *string `json:"role"`
IncludedMetrics []string `json:"includedMetrics"`
ExcludedMetrics []string `json:"excludedMetrics"`
RetireAutomatically bool `json:"retireAutomatically,omitempty"`
}
AWSIntegrationService integration settings for each AWS service
func (*AWSIntegrationService) MarshalJSON ¶ added in v0.28.0
func (a *AWSIntegrationService) MarshalJSON() ([]byte, error)
MarshalJSON implements json.Marshaler
type Alert ¶
type Alert struct {
ID string `json:"id,omitempty"`
Status string `json:"status,omitempty"`
MonitorID string `json:"monitorId,omitempty"`
Type string `json:"type,omitempty"`
HostID string `json:"hostId,omitempty"`
Value float64 `json:"value,omitempty"`
Message string `json:"message,omitempty"`
Reason string `json:"reason,omitempty"`
OpenedAt int64 `json:"openedAt,omitempty"`
ClosedAt int64 `json:"closedAt,omitempty"`
Memo string `json:"memo,omitempty"`
}
Alert information
type AlertGroupSetting ¶ added in v0.11.0
type AlertGroupSetting struct {
ID string `json:"id,omitempty"`
Name string `json:"name"`
Memo string `json:"memo,omitempty"`
ServiceScopes []string `json:"serviceScopes,omitempty"`
RoleScopes []string `json:"roleScopes,omitempty"`
MonitorScopes []string `json:"monitorScopes,omitempty"`
NotificationInterval uint64 `json:"notificationInterval,omitempty"`
}
AlertGroupSetting represents a Mackerel alert group setting. ref. https://mackerel.io/api-docs/entry/alert-group-settings
type AlertLog ¶ added in v0.37.0
type AlertLog struct {
ID string `json:"id"`
CreatedAt int64 `json:"createdAt"`
Status string `json:"status"`
Trigger string `json:"trigger"`
MonitorID *string `json:"monitorId"`
TargetValue *float64 `json:"targetValue"`
StatusDetail *struct {
Type string `json:"type"`
Detail struct {
Message string `json:"message"`
Memo string `json:"memo"`
} `json:"detail"`
} `json:"statusDetail,omitempty"`
}
AlertLog is the log of alert See https://mackerel.io/api-docs/entry/alerts#logs
type AlertsResp ¶ added in v0.1.0
AlertsResp includes alert and next id
type Attribute ¶ added in v0.38.0
type Attribute struct {
Key string `json:"key"`
Value *AttributeValue `json:"value"`
}
Attribute represents a span attribute
type AttributeValue ¶ added in v0.38.0
type AttributeValue struct {
ValueType string `json:"valueType"`
StringValue string `json:"stringValue,omitempty"`
BoolValue bool `json:"boolValue,omitempty"`
IntValue int64 `json:"intValue,omitempty"`
DoubleValue float64 `json:"doubleValue,omitempty"`
ArrayValue []*AttributeValue `json:"arrayValue,omitempty"`
KvlistValue map[string]*AttributeValue `json:"kvlistValue,omitempty"`
BytesValue []byte `json:"bytesValue,omitempty"`
}
AttributeValue represents a value that can be of different types
type Channel ¶ added in v0.9.0
type Channel struct {
// ID is excluded when used to call CreateChannel
ID string `json:"id,omitempty"`
Name string `json:"name"`
Type string `json:"type"`
SuspendedAt *int64 `json:"suspendedAt,omitempty"`
// Exists when the type is "email"
Emails *[]string `json:"emails,omitempty"`
UserIDs *[]string `json:"userIds,omitempty"`
// Exists when the type is "slack"
Mentions Mentions `json:"mentions,omitempty"`
// In order to support both 'not setting this field' and 'setting the field as false',
// this field needed to be *bool not bool.
EnabledGraphImage *bool `json:"enabledGraphImage,omitempty"`
// Exists when the type is "slack" or "webhook"
URL string `json:"url,omitempty"`
// Exists when the type is "email", "slack", or "webhook"
Events *[]string `json:"events,omitempty"`
}
Channel represents a Mackerel notification channel. ref. https://mackerel.io/api-docs/entry/channels
type CheckConfig ¶
CheckConfig is check plugin name and memo
type CheckReport ¶
type CheckReport struct {
Source CheckSource `json:"source"`
Name string `json:"name"`
Status CheckStatus `json:"status"`
Message string `json:"message"`
OccurredAt int64 `json:"occurredAt"`
NotificationInterval uint `json:"notificationInterval,omitempty"`
MaxCheckAttempts uint `json:"maxCheckAttempts,omitempty"`
}
CheckReport represents a report of check monitoring
type CheckReports ¶
type CheckReports struct {
Reports []*CheckReport `json:"reports"`
}
CheckReports represents check reports for API
type CheckSource ¶
type CheckSource interface {
CheckType() string
// contains filtered or unexported methods
}
CheckSource represents interface to which each check source type must confirm to
func NewCheckSourceHost ¶
func NewCheckSourceHost(hostID string) CheckSource
NewCheckSourceHost returns new CheckSource which check type is "host"
type CheckStatus ¶
type CheckStatus string
CheckStatus represents check monitoring status
const ( CheckStatusOK CheckStatus = "OK" CheckStatusWarning CheckStatus = "WARNING" CheckStatusCritical CheckStatus = "CRITICAL" CheckStatusUnknown CheckStatus = "UNKNOWN" )
CheckStatuses
type Client ¶
type Client struct {
BaseURL *url.URL
APIKey string
Verbose bool
UserAgent string
AdditionalHeaders http.Header
HTTPClient *http.Client
// Client will send logging events to both Logger and PrioritizedLogger.
// When neither Logger or PrioritizedLogger is set, the log package's standard logger will be used.
Logger *log.Logger
PrioritizedLogger PrioritizedLogger
}
Client api client for mackerel
func NewClientWithOptions ¶
NewClientWithOptions returns new mackerel.Client
func (*Client) BulkRetireHosts ¶ added in v0.22.0
BulkRetireHosts retires the hosts.
func (*Client) BulkUpdateHostStatuses ¶ added in v0.28.0
BulkUpdateHostStatuses updates status of the hosts.
func (*Client) CloseAlert ¶
CloseAlert closes an alert.
func (*Client) CreateAWSIntegration ¶ added in v0.18.0
func (c *Client) CreateAWSIntegration(param *CreateAWSIntegrationParam) (*AWSIntegration, error)
CreateAWSIntegration creates an AWS integration setting.
func (*Client) CreateAWSIntegrationExternalID ¶ added in v0.18.0
CreateAWSIntegrationExternalID creates an AWS integration External ID.
func (*Client) CreateAlertGroupSetting ¶ added in v0.11.0
func (c *Client) CreateAlertGroupSetting(param *AlertGroupSetting) (*AlertGroupSetting, error)
CreateAlertGroupSetting creates an alert group setting.
func (*Client) CreateChannel ¶ added in v0.9.0
CreateChannel creates a channel.
func (*Client) CreateDashboard ¶
CreateDashboard creates a dashboard.
func (*Client) CreateDowntime ¶ added in v0.8.0
CreateDowntime creates a downtime.
func (*Client) CreateGraphAnnotation ¶
func (c *Client) CreateGraphAnnotation(annotation *GraphAnnotation) (*GraphAnnotation, error)
CreateGraphAnnotation creates a graph annotation.
func (*Client) CreateGraphDefs ¶
func (c *Client) CreateGraphDefs(graphDefs []*GraphDefsParam) error
CreateGraphDefs creates graph definitions.
func (*Client) CreateHost ¶
func (c *Client) CreateHost(param *CreateHostParam) (string, error)
CreateHost creates a host.
func (*Client) CreateInvitation ¶ added in v0.35.0
func (c *Client) CreateInvitation(param *Invitation) (*Invitation, error)
CreateInvitation creates a invitation.
func (*Client) CreateMonitor ¶
CreateMonitor creates a monitor.
func (*Client) CreateNotificationGroup ¶ added in v0.10.0
func (c *Client) CreateNotificationGroup(param *NotificationGroup) (*NotificationGroup, error)
CreateNotificationGroup creates a notification group.
func (*Client) CreateRole ¶
func (c *Client) CreateRole(serviceName string, param *CreateRoleParam) (*Role, error)
CreateRole creates a role.
func (*Client) CreateService ¶
func (c *Client) CreateService(param *CreateServiceParam) (*Service, error)
CreateService creates a service.
func (*Client) DeleteAWSIntegration ¶ added in v0.18.0
func (c *Client) DeleteAWSIntegration(awsIntegrationID string) (*AWSIntegration, error)
DeleteAWSIntegration deletes an AWS integration setting.
func (*Client) DeleteAlertGroupSetting ¶ added in v0.11.0
func (c *Client) DeleteAlertGroupSetting(id string) (*AlertGroupSetting, error)
DeleteAlertGroupSetting deletes an alert group setting.
func (*Client) DeleteChannel ¶ added in v0.9.0
DeleteChannel deletes a channel.
func (*Client) DeleteDashboard ¶
DeleteDashboard deletes a dashboard.
func (*Client) DeleteDowntime ¶ added in v0.8.0
DeleteDowntime deletes a downtime.
func (*Client) DeleteGraphAnnotation ¶
func (c *Client) DeleteGraphAnnotation(annotationID string) (*GraphAnnotation, error)
DeleteGraphAnnotation deletes a graph annotation.
func (*Client) DeleteGraphDef ¶ added in v0.33.0
DeleteGraphDef deletes a graph definition.
func (*Client) DeleteHostMetaData ¶
DeleteHostMetaData deletes a host metadata.
func (*Client) DeleteMonitor ¶
DeleteMonitor updates a monitor.
func (*Client) DeleteNotificationGroup ¶ added in v0.10.0
func (c *Client) DeleteNotificationGroup(id string) (*NotificationGroup, error)
DeleteNotificationGroup deletes a notification group.
func (*Client) DeleteRole ¶
DeleteRole deletes a role.
func (*Client) DeleteRoleContext ¶ added in v0.38.0
func (c *Client) DeleteRoleContext(ctx context.Context, serviceName, roleName string) (*Role, error)
DeleteRoleContext is like [DeleteRole].
func (*Client) DeleteRoleMetaData ¶
DeleteRoleMetaData deletes a role metadata.
func (*Client) DeleteRoleMetaDataContext ¶ added in v0.38.0
func (c *Client) DeleteRoleMetaDataContext(ctx context.Context, serviceName, roleName, namespace string) error
DeleteRoleMetaDataContext is like [DeleteRoleMetaData].
func (*Client) DeleteService ¶
DeleteService deletes a service.
func (*Client) DeleteServiceContext ¶ added in v0.38.0
DeleteServiceContext is like [DeleteService].
func (*Client) DeleteServiceGraphDef ¶ added in v0.35.0
DeleteServiceGraphDef deletes a service metrics graph definition.
func (*Client) DeleteServiceGraphDefContext ¶ added in v0.38.0
func (c *Client) DeleteServiceGraphDefContext(ctx context.Context, serviceName string, graphName string) error
DeleteServiceGraphDefContext is like [DeleteServiceGraphDef].
func (*Client) DeleteServiceMetaData ¶
DeleteServiceMetaData deletes a service metadata.
func (*Client) DeleteServiceMetaDataContext ¶ added in v0.38.0
func (c *Client) DeleteServiceMetaDataContext(ctx context.Context, serviceName, namespace string) error
DeleteServiceMetaDataContext is like [DeleteServiceMetaData].
func (*Client) DeleteUser ¶ added in v0.7.0
DeleteUser deletes a user.
func (*Client) DeleteUserContext ¶ added in v0.38.0
DeleteUserContext is like [DeleteUser].
func (*Client) FetchHostMetricValues ¶
func (c *Client) FetchHostMetricValues(hostID string, metricName string, from int64, to int64) ([]MetricValue, error)
FetchHostMetricValues fetches the metric values for a host.
func (*Client) FetchLatestMetricValues ¶
func (c *Client) FetchLatestMetricValues(hostIDs []string, metricNames []string) (LatestMetricValues, error)
FetchLatestMetricValues fetches latest metrics.
func (*Client) FetchServiceMetricValues ¶
func (c *Client) FetchServiceMetricValues(serviceName string, metricName string, from int64, to int64) ([]MetricValue, error)
FetchServiceMetricValues fetches the metric values for a service.
func (*Client) FindAWSIntegration ¶ added in v0.18.0
func (c *Client) FindAWSIntegration(awsIntegrationID string) (*AWSIntegration, error)
FindAWSIntegration finds an AWS integration setting.
func (*Client) FindAWSIntegrations ¶ added in v0.18.0
func (c *Client) FindAWSIntegrations() ([]*AWSIntegration, error)
FindAWSIntegrations finds AWS integration settings.
func (*Client) FindAlertGroupSettings ¶ added in v0.11.0
func (c *Client) FindAlertGroupSettings() ([]*AlertGroupSetting, error)
FindAlertGroupSettings finds alert group settings.
func (*Client) FindAlertLogs ¶ added in v0.37.0
func (c *Client) FindAlertLogs(alertId string, params *FindAlertLogsParam) (*FindAlertLogsResp, error)
FindAlertLogs gets alert logs.
func (*Client) FindAlerts ¶
func (c *Client) FindAlerts() (*AlertsResp, error)
FindAlerts finds open alerts.
func (*Client) FindAlertsByNextID ¶ added in v0.1.0
func (c *Client) FindAlertsByNextID(nextID string) (*AlertsResp, error)
FindAlertsByNextID finds next open alerts by next id.
func (*Client) FindChannels ¶ added in v0.9.0
FindChannels finds channels.
func (*Client) FindDashboard ¶
FindDashboard finds a dashboard.
func (*Client) FindDashboards ¶
FindDashboards finds dashboards.
func (*Client) FindDowntimes ¶ added in v0.8.0
FindDowntimes finds downtimes.
func (*Client) FindGraphAnnotations ¶
func (c *Client) FindGraphAnnotations(service string, from int64, to int64) ([]*GraphAnnotation, error)
FindGraphAnnotations fetches graph annotations.
func (*Client) FindHostByCustomIdentifier ¶ added in v0.22.0
func (c *Client) FindHostByCustomIdentifier(customIdentifier string, param *FindHostByCustomIdentifierParam) (*Host, error)
FindHostByCustomIdentifier finds a host by the custom identifier.
func (*Client) FindHosts ¶
func (c *Client) FindHosts(param *FindHostsParam) ([]*Host, error)
FindHosts finds hosts.
func (*Client) FindInvitations ¶ added in v0.9.0
func (c *Client) FindInvitations() ([]*Invitation, error)
FindInvitations finds invitations.
func (*Client) FindMonitors ¶
FindMonitors finds monitors.
func (*Client) FindNotificationGroups ¶ added in v0.10.0
func (c *Client) FindNotificationGroups() ([]*NotificationGroup, error)
FindNotificationGroups finds notification groups.
func (*Client) FindServices ¶
FindServices finds services.
func (*Client) FindWithClosedAlerts ¶ added in v0.1.0
func (c *Client) FindWithClosedAlerts() (*AlertsResp, error)
FindWithClosedAlerts finds open and close alerts.
func (*Client) FindWithClosedAlertsByNextID ¶ added in v0.1.0
func (c *Client) FindWithClosedAlertsByNextID(nextID string) (*AlertsResp, error)
FindWithClosedAlertsByNextID finds open and close alerts by next id.
func (*Client) GetAlertGroupSetting ¶ added in v0.11.0
func (c *Client) GetAlertGroupSetting(id string) (*AlertGroupSetting, error)
GetAlertGroupSetting gets an alert group setting.
func (*Client) GetHostMetaData ¶
func (c *Client) GetHostMetaData(hostID, namespace string) (*HostMetaDataResp, error)
GetHostMetaData gets a host metadata.
func (*Client) GetHostMetaDataNameSpaces ¶
GetHostMetaDataNameSpaces fetches namespaces of host metadata.
func (*Client) GetMonitor ¶
GetMonitor gets a monitor.
func (*Client) GetRoleMetaData ¶
func (c *Client) GetRoleMetaData(serviceName, roleName, namespace string) (*RoleMetaDataResp, error)
GetRoleMetaData gets a role metadata.
func (*Client) GetRoleMetaDataNameSpaces ¶
GetRoleMetaDataNameSpaces fetches namespaces of role metadata.
func (*Client) GetServiceMetaData ¶
func (c *Client) GetServiceMetaData(serviceName, namespace string) (*ServiceMetaDataResp, error)
GetServiceMetaData gets service metadata.
func (*Client) GetServiceMetaDataNameSpaces ¶
GetServiceMetaDataNameSpaces fetches namespaces of service metadata.
func (*Client) GetTrace ¶ added in v0.38.0
func (c *Client) GetTrace(traceID string) (*TraceResponse, error)
GetTrace gets detailed trace information for the specified trace ID
func (*Client) GetTraceContext ¶ added in v0.38.0
GetTraceContext is like [GetTrace].
func (*Client) ListAWSIntegrationExcludableMetrics ¶ added in v0.18.0
func (c *Client) ListAWSIntegrationExcludableMetrics() (*ListAWSIntegrationExcludableMetrics, error)
ListAWSIntegrationExcludableMetrics lists excludable metrics for AWS integration.
func (*Client) ListDbQueryStats ¶ added in v0.38.0
func (c *Client) ListDbQueryStats(param *ListDbQueryStatsParam) (*DbQueryStatsPageConnection, error)
ListDbQueryStats retrieves database query statistics
func (*Client) ListDbQueryStatsContext ¶ added in v0.38.0
func (c *Client) ListDbQueryStatsContext(ctx context.Context, param *ListDbQueryStatsParam) (*DbQueryStatsPageConnection, error)
ListDbQueryStatsContext is like [ListDbQueryStats].
func (*Client) ListHTTPServerStats ¶ added in v0.38.0
func (c *Client) ListHTTPServerStats(param *ListHTTPServerStatsParam) (*HTTPServerStatsPageConnection, error)
ListHTTPServerStats retrieves HTTP server statistics
func (*Client) ListHTTPServerStatsContext ¶ added in v0.38.0
func (c *Client) ListHTTPServerStatsContext(ctx context.Context, param *ListHTTPServerStatsParam) (*HTTPServerStatsPageConnection, error)
ListHTTPServerStatsContext is like [ListHTTPServerStats].
func (*Client) ListHostMetricNames ¶
ListHostMetricNames lists metric names of a host.
func (*Client) ListMonitoredStatues ¶ added in v0.13.0
func (c *Client) ListMonitoredStatues(hostID string) ([]MonitoredStatus, error)
ListMonitoredStatues lists monitored statues of a host.
func (*Client) ListServiceMetricNames ¶
ListServiceMetricNames lists metric names of a service.
func (*Client) ListTraces ¶ added in v0.38.0
func (c *Client) ListTraces(params *ListTracesParam) (*ListTracesResponse, error)
ListTraces searches traces
func (*Client) ListTracesContext ¶ added in v0.38.0
func (c *Client) ListTracesContext(ctx context.Context, params *ListTracesParam) (*ListTracesResponse, error)
ListTracesContext is like [ListTraces].
func (*Client) ListTracesSeq ¶ added in v0.38.0
func (c *Client) ListTracesSeq(ctx context.Context, params *ListTracesParam) iter.Seq2[*ListTracesResult, error]
ListTracesSeq returns an iterator over traces that are selecting by params. When it reaches the end of the traces in a request, it automatically fetches subsequent pages from the API using the same params except [ListTracesParams.Page], then the iterator continues its results. Errors returned from the API are reported to the consumer via the second parameter of the iterator.
If an error occurs, the iterator will retry the request with the exact same params on subsequent calls until a successful response is received. Note that the iterator does not include a delay between retries. Therefore, the consumer should wait for sufficient period before each retry.
func (*Client) PostCheckReports ¶
func (c *Client) PostCheckReports(checkReports *CheckReports) error
PostCheckReports reports check monitoring results.
func (*Client) PostHostMetricValues ¶
func (c *Client) PostHostMetricValues(metricValues []*HostMetricValue) error
PostHostMetricValues post host metrics
func (*Client) PostHostMetricValuesByHostID ¶
func (c *Client) PostHostMetricValuesByHostID(hostID string, metricValues []*MetricValue) error
PostHostMetricValuesByHostID post host metrics
func (*Client) PostServiceMetricValues ¶
func (c *Client) PostServiceMetricValues(serviceName string, metricValues []*MetricValue) error
PostServiceMetricValues posts service metrics.
func (*Client) PutHostMetaData ¶
func (c *Client) PutHostMetaData(hostID, namespace string, metadata HostMetaData) error
PutHostMetaData puts a host metadata.
func (*Client) PutRoleMetaData ¶
func (c *Client) PutRoleMetaData(serviceName, roleName, namespace string, metadata RoleMetaData) error
PutRoleMetaData puts a role metadata.
func (*Client) PutServiceMetaData ¶
func (c *Client) PutServiceMetaData(serviceName, namespace string, metadata ServiceMetaData) error
PutServiceMetaData puts a service metadata.
func (*Client) RetireHost ¶
RetireHost retires the host.
func (*Client) UpdateAWSIntegration ¶ added in v0.18.0
func (c *Client) UpdateAWSIntegration(awsIntegrationID string, param *UpdateAWSIntegrationParam) (*AWSIntegration, error)
UpdateAWSIntegration updates an AWS integration setting.
func (*Client) UpdateAlert ¶ added in v0.23.0
func (c *Client) UpdateAlert(alertID string, param UpdateAlertParam) (*UpdateAlertResponse, error)
UpdateAlert updates an alert.
func (*Client) UpdateAlertGroupSetting ¶ added in v0.11.0
func (c *Client) UpdateAlertGroupSetting(id string, param *AlertGroupSetting) (*AlertGroupSetting, error)
UpdateAlertGroupSetting updates an alert group setting.
func (*Client) UpdateChannel ¶ added in v0.38.0
UpdateChannel updates a specific channel
func (*Client) UpdateChannelContext ¶ added in v0.38.0
func (c *Client) UpdateChannelContext(ctx context.Context, channelID string, param *Channel) (*Channel, error)
UpdateChannelContext is like [UpdateChannel]
func (*Client) UpdateDashboard ¶
UpdateDashboard updates a dashboard.
func (*Client) UpdateDowntime ¶ added in v0.8.0
UpdateDowntime updates a downtime.
func (*Client) UpdateGraphAnnotation ¶
func (c *Client) UpdateGraphAnnotation(annotationID string, annotation *GraphAnnotation) (*GraphAnnotation, error)
UpdateGraphAnnotation updates a graph annotation.
func (*Client) UpdateHost ¶
func (c *Client) UpdateHost(hostID string, param *UpdateHostParam) (string, error)
UpdateHost updates a host.
func (*Client) UpdateHostRoleFullnames ¶
UpdateHostRoleFullnames updates host roles.
func (*Client) UpdateHostStatus ¶
UpdateHostStatus updates a host status.
func (*Client) UpdateMonitor ¶
UpdateMonitor updates a monitor.
func (*Client) UpdateNotificationGroup ¶ added in v0.10.0
func (c *Client) UpdateNotificationGroup(id string, param *NotificationGroup) (*NotificationGroup, error)
UpdateNotificationGroup updates a notification group.
type Cloud ¶
type Cloud struct {
Provider string `json:"provider,omitempty"`
MetaData interface{} `json:"metadata,omitempty"`
}
Cloud cloud
type CreateAWSIntegrationParam ¶ added in v0.18.0
type CreateAWSIntegrationParam struct {
Name string `json:"name"`
Memo string `json:"memo"`
Key string `json:"key,omitempty"`
SecretKey string `json:"secretKey,omitempty"`
RoleArn string `json:"roleArn,omitempty"`
ExternalID string `json:"externalId,omitempty"`
Region string `json:"region"`
IncludedTags string `json:"includedTags"`
ExcludedTags string `json:"excludedTags"`
Services map[string]*AWSIntegrationService `json:"services"`
}
CreateAWSIntegrationParam parameters for CreateAWSIntegration
type CreateHostParam ¶
type CreateHostParam struct {
Name string `json:"name"`
DisplayName string `json:"displayName,omitempty"`
Memo string `json:"memo,omitempty"`
Meta HostMeta `json:"meta"`
Interfaces []Interface `json:"interfaces"`
RoleFullnames []string `json:"roleFullnames"`
Checks []CheckConfig `json:"checks"`
CustomIdentifier string `json:"customIdentifier,omitempty"`
}
CreateHostParam parameters for CreateHost
type CreateServiceParam ¶
CreateServiceParam parameters for CreateService
type Dashboard ¶
type Dashboard struct {
ID string `json:"id,omitempty"`
Title string `json:"title"`
URLPath string `json:"urlPath"`
CreatedAt int64 `json:"createdAt,omitempty"`
UpdatedAt int64 `json:"updatedAt,omitempty"`
Memo string `json:"memo"`
Widgets []Widget `json:"widgets"`
}
Dashboard information
type DbQueryStats ¶ added in v0.38.0
type DbQueryStats struct {
Query string `json:"query"`
ExecutionCount int64 `json:"executionCount"`
TotalMillis float64 `json:"totalMillis"`
AverageMillis float64 `json:"averageMillis"`
ApproxP95Millis float64 `json:"approxP95Millis"`
}
DbQueryStats represents database query statistics
type DbQueryStatsPageConnection ¶ added in v0.38.0
type DbQueryStatsPageConnection struct {
Results []*DbQueryStats `json:"results"`
HasNextPage bool `json:"hasNextPage"`
}
DbQueryStatsPageConnection represents a paginated response of database query statistics
type Downtime ¶ added in v0.8.0
type Downtime struct {
ID string `json:"id,omitempty"`
Name string `json:"name"`
Memo string `json:"memo,omitempty"`
Start int64 `json:"start"`
Duration int64 `json:"duration"`
Recurrence *DowntimeRecurrence `json:"recurrence,omitempty"`
ServiceScopes []string `json:"serviceScopes,omitempty"`
ServiceExcludeScopes []string `json:"serviceExcludeScopes,omitempty"`
RoleScopes []string `json:"roleScopes,omitempty"`
RoleExcludeScopes []string `json:"roleExcludeScopes,omitempty"`
MonitorScopes []string `json:"monitorScopes,omitempty"`
MonitorExcludeScopes []string `json:"monitorExcludeScopes,omitempty"`
}
Downtime information
type DowntimeRecurrence ¶ added in v0.8.0
type DowntimeRecurrence struct {
Type DowntimeRecurrenceType `json:"type"`
Interval int64 `json:"interval"`
Weekdays []DowntimeWeekday `json:"weekdays,omitempty"`
Until int64 `json:"until,omitempty"`
}
DowntimeRecurrence ...
type DowntimeRecurrenceType ¶ added in v0.8.0
type DowntimeRecurrenceType int
DowntimeRecurrenceType ...
const ( DowntimeRecurrenceTypeHourly DowntimeRecurrenceType = iota + 1 DowntimeRecurrenceTypeDaily DowntimeRecurrenceTypeWeekly DowntimeRecurrenceTypeMonthly DowntimeRecurrenceTypeYearly )
DowntimeRecurrenceType ...
func (DowntimeRecurrenceType) MarshalJSON ¶ added in v0.8.0
func (t DowntimeRecurrenceType) MarshalJSON() ([]byte, error)
MarshalJSON implements json.Marshaler
func (DowntimeRecurrenceType) String ¶ added in v0.8.0
func (t DowntimeRecurrenceType) String() string
String implements Stringer
func (*DowntimeRecurrenceType) UnmarshalJSON ¶ added in v0.8.0
func (t *DowntimeRecurrenceType) UnmarshalJSON(b []byte) error
UnmarshalJSON implements json.Unmarshaler
type DowntimeWeekday ¶ added in v0.8.0
DowntimeWeekday ...
func (DowntimeWeekday) MarshalJSON ¶ added in v0.8.0
func (w DowntimeWeekday) MarshalJSON() ([]byte, error)
MarshalJSON implements json.Marshaler
func (DowntimeWeekday) String ¶ added in v0.8.0
func (w DowntimeWeekday) String() string
String implements Stringer
func (*DowntimeWeekday) UnmarshalJSON ¶ added in v0.8.0
func (w *DowntimeWeekday) UnmarshalJSON(b []byte) error
UnmarshalJSON implements json.Unmarshaler
type Event ¶ added in v0.38.0
type Event struct {
Time time.Time `json:"time"`
Name string `json:"name"`
Attributes []*Attribute `json:"attributes"`
DroppedAttributesCount int `json:"droppedAttributesCount"`
}
Event represents a span event
type FindAlertLogsParam ¶ added in v0.37.0
FindAlertLogsParam is the parameters for FindAlertLogs
type FindAlertLogsResp ¶ added in v0.37.0
type FindAlertLogsResp struct {
AlertLogs []*AlertLog `json:"logs"`
NextID string `json:"nextId,omitempty"`
}
FindAlertLogsResp is for FindAlertLogs
type FindHostByCustomIdentifierParam ¶ added in v0.22.0
type FindHostByCustomIdentifierParam struct {
CaseInsensitive bool
}
FindHostByCustomIdentifierParam parameters for FindHostByCustomIdentifier
type FindHostsParam ¶
type FindHostsParam struct {
Service string
Roles []string
Name string
Statuses []string
CustomIdentifier string
}
FindHostsParam parameters for FindHosts
type FormatRule ¶ added in v0.26.0
type FormatRule struct {
Name string `json:"name"`
Threshold float64 `json:"threshold"`
Operator string `json:"operator"`
}
FormatRule information
type Graph ¶ added in v0.6.0
type Graph struct {
Type string `json:"type"`
Name string `json:"name,omitempty"`
HostID string `json:"hostId,omitempty"`
RoleFullName string `json:"roleFullname,omitempty"`
IsStacked bool `json:"isStacked,omitempty"`
ServiceName string `json:"serviceName,omitempty"`
Expression string `json:"expression,omitempty"`
Query string `json:"query,omitempty"`
Legend string `json:"legend,omitempty"`
}
Graph information
func (Graph) MarshalJSON ¶ added in v0.14.0
MarshalJSON marshals as JSON
type GraphAnnotation ¶
type GraphAnnotation struct {
ID string `json:"id,omitempty"`
Title string `json:"title,omitempty"`
Description string `json:"description,omitempty"`
From int64 `json:"from,omitempty"`
To int64 `json:"to,omitempty"`
Service string `json:"service,omitempty"`
Roles []string `json:"roles,omitempty"`
}
GraphAnnotation represents parameters to post a graph annotation.
type GraphDefsMetric ¶
type GraphDefsMetric struct {
Name string `json:"name"`
DisplayName string `json:"displayName,omitempty"`
IsStacked bool `json:"isStacked"`
}
GraphDefsMetric graph metric
type GraphDefsParam ¶
type GraphDefsParam struct {
Name string `json:"name"`
DisplayName string `json:"displayName,omitempty"`
Unit string `json:"unit,omitempty"`
Metrics []*GraphDefsMetric `json:"metrics"`
}
GraphDefsParam parameters for posting graph definitions
type HTTPServerStats ¶ added in v0.38.0
type HTTPServerStats struct {
Method string `json:"method"`
Route string `json:"route"`
TotalMillis float64 `json:"totalMillis"`
AverageMillis float64 `json:"averageMillis"`
ApproxP95Millis float64 `json:"approxP95Millis"`
ErrorRatePercentage float64 `json:"errorRatePercentage"`
RequestCount int64 `json:"requestCount"`
}
HTTPServerStats represents HTTP server statistics
type HTTPServerStatsPageConnection ¶ added in v0.38.0
type HTTPServerStatsPageConnection struct {
Results []*HTTPServerStats `json:"results"`
HasNextPage bool `json:"hasNextPage"`
}
HTTPServerStatsPageConnection represents a paginated response of HTTP server statistics
type HeaderField ¶
HeaderField represents key-value pairs in an HTTP header for external http monitoring.
type Host ¶
type Host struct {
ID string `json:"id"`
Name string `json:"name"`
DisplayName string `json:"displayName,omitempty"`
CustomIdentifier string `json:"customIdentifier,omitempty"`
Size string `json:"size"`
Status string `json:"status"`
Memo string `json:"memo"`
Roles Roles `json:"roles"`
IsRetired bool `json:"isRetired"`
CreatedAt int32 `json:"createdAt"`
Meta HostMeta `json:"meta"`
Interfaces []Interface `json:"interfaces"`
}
Host host information
func (*Host) DateFromCreatedAt ¶
DateFromCreatedAt returns time.Time
func (*Host) GetRoleFullnames ¶
GetRoleFullnames gets role-full-names
func (*Host) IPAddresses ¶
IPAddresses returns ipaddresses
type HostMeta ¶
type HostMeta struct {
AgentRevision string `json:"agent-revision,omitempty"`
AgentVersion string `json:"agent-version,omitempty"`
AgentName string `json:"agent-name,omitempty"`
BlockDevice BlockDevice `json:"block_device,omitempty"`
CPU CPU `json:"cpu,omitempty"`
Filesystem FileSystem `json:"filesystem,omitempty"`
Kernel Kernel `json:"kernel,omitempty"`
Memory Memory `json:"memory,omitempty"`
Cloud *Cloud `json:"cloud,omitempty"`
}
HostMeta host meta informations
type HostMetaDataResp ¶
type HostMetaDataResp struct {
HostMetaData HostMetaData
LastModified time.Time
}
HostMetaDataResp represents response for host metadata.
type HostMetricValue ¶
type HostMetricValue struct {
HostID string `json:"hostId,omitempty"`
*MetricValue
}
HostMetricValue host metric value
type Interface ¶
type Interface struct {
Name string `json:"name,omitempty"`
IPAddress string `json:"ipAddress,omitempty"`
IPv4Addresses []string `json:"ipv4Addresses,omitempty"`
IPv6Addresses []string `json:"ipv6Addresses,omitempty"`
MacAddress string `json:"macAddress,omitempty"`
}
Interface network interface
type Invitation ¶ added in v0.9.0
type Invitation struct {
Email string `json:"email,omitempty"`
Authority string `json:"authority,omitempty"`
ExpiresAt int64 `json:"expiresAt,omitempty"`
}
Invitation information
type LatestMetricValues ¶
type LatestMetricValues map[string]map[string]*MetricValue
LatestMetricValues latest metric value
type Layout ¶ added in v0.6.0
type Layout struct {
X int64 `json:"x"`
Y int64 `json:"y"`
Width int64 `json:"width"`
Height int64 `json:"height"`
}
Layout information
type Link ¶ added in v0.38.0
type Link struct {
TraceID string `json:"traceId"`
SpanID string `json:"spanId"`
TraceState string `json:"traceState"`
Attributes []*Attribute `json:"attributes"`
DroppedAttributesCount int `json:"droppedAttributesCount"`
}
Link represents a link to another span
type ListAWSIntegrationExcludableMetrics ¶ added in v0.18.0
ListAWSIntegrationExcludableMetrics List of excludeable metric names for AWS integration
type ListDbQueryStatsParam ¶ added in v0.38.0
type ListDbQueryStatsParam struct {
ServiceName string
From int64
To int64
ServiceNamespace *string
Environment *string
Version *string
Query *string
OrderColumn *string
OrderDirection *string
Page *int
PerPage *int
}
ListDbQueryStatsParam represents parameters for listing database query statistics
type ListHTTPServerStatsParam ¶ added in v0.38.0
type ListHTTPServerStatsParam struct {
ServiceName string
From int64
To int64
ServiceNamespace *string
Environment *string
Version *string
OrderColumn *string
OrderDirection *string
Method *string
Route *string
Page *int
PerPage *int
}
ListHTTPServerStatsParam represents parameters for listing HTTP server statistics
type ListTracesParam ¶ added in v0.38.0
type ListTracesParam struct {
ServiceName string `json:"serviceName"`
ServiceNamespace *string `json:"serviceNamespace,omitzero"`
From int64 `json:"from"`
To int64 `json:"to"`
Environment *string `json:"environment,omitzero"`
TraceID *string `json:"traceId,omitzero"`
SpanName *string `json:"spanName,omitzero"`
Version *string `json:"version,omitzero"`
IssueFingerprint *string `json:"issueFingerprint,omitzero"`
StatusCode *ListTracesParamStatusCode `json:"statusCode,omitzero"`
MinLatencyMillis *int64 `json:"minLatencyMillis,omitzero"`
MaxLatencyMillis *int64 `json:"maxLatencyMillis,omitzero"`
Attributes []TraceAttributeFilter `json:"attributes,omitzero"`
ResourceAttributes []TraceAttributeFilter `json:"resourceAttributes,omitzero"`
Page *int `json:"page,omitzero"`
PerPage *int `json:"perPage,omitzero"`
Order TraceOrder `json:"order,omitzero"`
}
type ListTracesParamStatusCode ¶ added in v0.39.0
type ListTracesParamStatusCode string
const ( ListTracesParamStatusCodeOk ListTracesParamStatusCode = "OK" ListTracesParamStatusCodeError ListTracesParamStatusCode = "ERROR" )
type ListTracesResponse ¶ added in v0.38.0
type ListTracesResponse struct {
Results []*ListTracesResult `json:"results"`
HasNextPage bool `json:"hasNextPage"`
}
type ListTracesResult ¶ added in v0.38.0
type ListTracesResult struct {
TraceID string `json:"traceId"`
ServiceName string `json:"serviceName"`
ServiceNamespace string `json:"serviceNamespace"`
Environment string `json:"environment"`
Title string `json:"title"`
TraceStartAt int64 `json:"traceStartAt"`
TraceLatencyMillis int64 `json:"traceLatencyMillis"`
ServiceStartAt int64 `json:"serviceStartAt"`
ServiceLatencyMillis int64 `json:"serviceLatencyMillis"`
}
type Mentions ¶ added in v0.9.0
type Mentions struct {
OK string `json:"ok,omitempty"`
Warning string `json:"warning,omitempty"`
Critical string `json:"critical,omitempty"`
}
Mentions represents the structure used for slack channel mentions
type Metric ¶ added in v0.6.0
type Metric struct {
Type string `json:"type"`
Name string `json:"name,omitempty"`
HostID string `json:"hostId,omitempty"`
ServiceName string `json:"serviceName,omitempty"`
Expression string `json:"expression,omitempty"`
Query string `json:"query,omitempty"`
Legend string `json:"legend,omitempty"`
}
Metric information
func (Metric) MarshalJSON ¶ added in v0.14.0
MarshalJSON marshals as JSON
type MetricValue ¶
type MetricValue struct {
Name string `json:"name,omitempty"`
Time int64 `json:"time,omitempty"`
Value interface{} `json:"value,omitempty"`
}
MetricValue metric value
type Monitor ¶
type Monitor interface {
MonitorType() string
MonitorID() string
MonitorName() string
// contains filtered or unexported methods
}
{
"monitors": [
{
"id": "2cSZzK3XfmG",
"type": "connectivity",
"isMute": false,
"scopes": [],
"excludeScopes": [],
"alertStatusOnGone": "WARNING"
},
{
"id" : "2cSZzK3XfmG",
"type": "host",
"isMute": false,
"name": "disk.aa-00.writes.delta",
"duration": 3,
"metric": "disk.aa-00.writes.delta",
"operator": ">",
"warning": 20000.0,
"critical": 400000.0,
"scopes": [
"SomeService"
],
"excludeScopes": [
"SomeService: db-slave-backup"
],
"maxCheckAttempts": 1,
"notificationInterval": 60
},
{
"id" : "2cSZzK3XfmG",
"type": "service",
"isMute": false,
"name": "SomeService - custom.access_num.4xx_count",
"service": "SomeService",
"duration": 1,
"metric": "custom.access_num.4xx_count",
"operator": ">",
"warning": 50.0,
"critical": 100.0,
"maxCheckAttempts": 1,
"missingDurationWarning": 360,
"missingDurationCritical": 720
},
{
"id" : "2cSZzK3XfmG",
"type": "external",
"isMute": false,
"name": "example.com",
"method": "GET",
"url": "http://www.example.com",
"service": "SomeService",
"maxCheckAttempts": 1,
"responseTimeCritical": 10000,
"responseTimeWarning": 5000,
"responseTimeDuration": 5,
"certificationExpirationCritical": 15,
"certificationExpirationWarning": 30,
"expectedStatusCode": 200,
"requestBody": "Request Body",
"containsString": "Example",
"skipCertificateVerification": true,
"followRedirect": true,
"headers": [
{ "name": "Cache-Control", "value": "no-cache"}
]
},
{
"id": "3CSsK3HKiHb",
"type": "anomalyDetection",
"isMute": false,
"name": "My first anomaly detection",
"trainingPeriodFrom": 1561429260,
"scopes": [
"MyService: MyRole"
],
"maxCheckAttempts": 3,
"warningSensitivity": "insensitive"
},
{
"id": "57We5nNtpZA",
"type": "query",
"isMute": false,
"name": "LabeldMetric - custom.access_counter",
"query": "custom.access_counter",
"operator": ">",
"warning": 30.0,
"critical": 300.0,
"legend":""
}
]
}
Monitor represents interface to which each monitor type must confirm to.
type MonitorAnomalyDetection ¶ added in v0.6.0
type MonitorAnomalyDetection struct {
ID string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Memo string `json:"memo,omitempty"`
Type string `json:"type,omitempty"`
IsMute bool `json:"isMute,omitempty"`
NotificationInterval uint64 `json:"notificationInterval,omitempty"`
WarningSensitivity string `json:"warningSensitivity,omitempty"`
CriticalSensitivity string `json:"criticalSensitivity,omitempty"`
TrainingPeriodFrom uint64 `json:"trainingPeriodFrom,omitempty"`
MaxCheckAttempts uint64 `json:"maxCheckAttempts,omitempty"`
Scopes []string `json:"scopes"`
}
MonitorAnomalyDetection represents anomaly detection monitor.
func (*MonitorAnomalyDetection) MonitorID ¶ added in v0.6.0
func (m *MonitorAnomalyDetection) MonitorID() string
MonitorID returns monitor id.
func (*MonitorAnomalyDetection) MonitorName ¶ added in v0.6.0
func (m *MonitorAnomalyDetection) MonitorName() string
MonitorName returns monitor name.
func (*MonitorAnomalyDetection) MonitorType ¶ added in v0.6.0
func (m *MonitorAnomalyDetection) MonitorType() string
MonitorType returns monitor type.
type MonitorConnectivity ¶
type MonitorConnectivity struct {
ID string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Memo string `json:"memo,omitempty"`
AlertStatusOnGone string `json:"alertStatusOnGone,omitempty"`
Type string `json:"type,omitempty"`
IsMute bool `json:"isMute,omitempty"`
NotificationInterval uint64 `json:"notificationInterval,omitempty"`
Scopes []string `json:"scopes,omitempty"`
ExcludeScopes []string `json:"excludeScopes,omitempty"`
}
MonitorConnectivity represents connectivity monitor.
func (*MonitorConnectivity) MonitorID ¶
func (m *MonitorConnectivity) MonitorID() string
MonitorID returns monitor id.
func (*MonitorConnectivity) MonitorName ¶
func (m *MonitorConnectivity) MonitorName() string
MonitorName returns monitor name.
func (*MonitorConnectivity) MonitorType ¶
func (m *MonitorConnectivity) MonitorType() string
MonitorType returns monitor type.
type MonitorExpression ¶
type MonitorExpression struct {
ID string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Memo string `json:"memo,omitempty"`
Type string `json:"type,omitempty"`
IsMute bool `json:"isMute,omitempty"`
NotificationInterval uint64 `json:"notificationInterval,omitempty"`
Expression string `json:"expression,omitempty"`
Operator string `json:"operator,omitempty"`
Warning *float64 `json:"warning"`
Critical *float64 `json:"critical"`
EvaluateBackwardMinutes *uint64 `json:"evaluateBackwardMinutes,omitempty"`
}
MonitorExpression represents expression monitor.
func (*MonitorExpression) MonitorID ¶
func (m *MonitorExpression) MonitorID() string
MonitorID returns monitor id.
func (*MonitorExpression) MonitorName ¶
func (m *MonitorExpression) MonitorName() string
MonitorName returns monitor name.
func (*MonitorExpression) MonitorType ¶
func (m *MonitorExpression) MonitorType() string
MonitorType returns monitor type.
type MonitorExternalHTTP ¶
type MonitorExternalHTTP struct {
ID string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Memo string `json:"memo,omitempty"`
Type string `json:"type,omitempty"`
IsMute bool `json:"isMute,omitempty"`
NotificationInterval uint64 `json:"notificationInterval,omitempty"`
Method string `json:"method,omitempty"`
URL string `json:"url,omitempty"`
MaxCheckAttempts uint64 `json:"maxCheckAttempts,omitempty"`
Service string `json:"service,omitempty"`
ResponseTimeCritical *float64 `json:"responseTimeCritical,omitempty"`
ResponseTimeWarning *float64 `json:"responseTimeWarning,omitempty"`
ResponseTimeDuration *uint64 `json:"responseTimeDuration,omitempty"`
RequestBody string `json:"requestBody,omitempty"`
ContainsString string `json:"containsString,omitempty"`
CertificationExpirationCritical *uint64 `json:"certificationExpirationCritical,omitempty"`
CertificationExpirationWarning *uint64 `json:"certificationExpirationWarning,omitempty"`
SkipCertificateVerification bool `json:"skipCertificateVerification,omitempty"`
FollowRedirect bool `json:"followRedirect,omitempty"`
ExpectedStatusCode *int `json:"expectedStatusCode,omitempty"`
// Empty list of headers and nil are different. You have to specify empty
// list as headers explicitly if you want to remove all headers instead of
// using nil.
Headers []HeaderField `json:"headers"`
}
MonitorExternalHTTP represents external HTTP monitor.
func (*MonitorExternalHTTP) MonitorID ¶
func (m *MonitorExternalHTTP) MonitorID() string
MonitorID returns monitor id.
func (*MonitorExternalHTTP) MonitorName ¶
func (m *MonitorExternalHTTP) MonitorName() string
MonitorName returns monitor name.
func (*MonitorExternalHTTP) MonitorType ¶
func (m *MonitorExternalHTTP) MonitorType() string
MonitorType returns monitor type.
type MonitorHostMetric ¶
type MonitorHostMetric struct {
ID string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Memo string `json:"memo,omitempty"`
Type string `json:"type,omitempty"`
IsMute bool `json:"isMute,omitempty"`
NotificationInterval uint64 `json:"notificationInterval,omitempty"`
Metric string `json:"metric,omitempty"`
Operator string `json:"operator,omitempty"`
Warning *float64 `json:"warning"`
Critical *float64 `json:"critical"`
Duration uint64 `json:"duration,omitempty"`
MaxCheckAttempts uint64 `json:"maxCheckAttempts,omitempty"`
Scopes []string `json:"scopes,omitempty"`
ExcludeScopes []string `json:"excludeScopes,omitempty"`
}
MonitorHostMetric represents host metric monitor.
func (*MonitorHostMetric) MonitorID ¶
func (m *MonitorHostMetric) MonitorID() string
MonitorID returns monitor id.
func (*MonitorHostMetric) MonitorName ¶
func (m *MonitorHostMetric) MonitorName() string
MonitorName returns monitor name.
func (*MonitorHostMetric) MonitorType ¶
func (m *MonitorHostMetric) MonitorType() string
MonitorType returns monitor type.
type MonitorQuery ¶ added in v0.31.0
type MonitorQuery struct {
ID string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Memo string `json:"memo,omitempty"`
Type string `json:"type,omitempty"`
IsMute bool `json:"isMute,omitempty"`
NotificationInterval uint64 `json:"notificationInterval,omitempty"`
Query string `json:"query,omitempty"`
Operator string `json:"operator,omitempty"`
Warning *float64 `json:"warning"`
Critical *float64 `json:"critical"`
Legend string `json:"legend,omitempty"`
EvaluateBackwardMinutes *uint64 `json:"evaluateBackwardMinutes,omitempty"`
}
MonitorQuery represents query monitor.
func (*MonitorQuery) MonitorID ¶ added in v0.31.0
func (m *MonitorQuery) MonitorID() string
MonitorID returns monitor id.
func (*MonitorQuery) MonitorName ¶ added in v0.31.0
func (m *MonitorQuery) MonitorName() string
MonitorName returns monitor name.
func (*MonitorQuery) MonitorType ¶ added in v0.31.0
func (m *MonitorQuery) MonitorType() string
MonitorType returns monitor type.
type MonitorServiceMetric ¶
type MonitorServiceMetric struct {
ID string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Memo string `json:"memo,omitempty"`
Type string `json:"type,omitempty"`
IsMute bool `json:"isMute,omitempty"`
NotificationInterval uint64 `json:"notificationInterval,omitempty"`
Service string `json:"service,omitempty"`
Metric string `json:"metric,omitempty"`
Operator string `json:"operator,omitempty"`
Warning *float64 `json:"warning"`
Critical *float64 `json:"critical"`
Duration uint64 `json:"duration,omitempty"`
MaxCheckAttempts uint64 `json:"maxCheckAttempts,omitempty"`
MissingDurationWarning uint64 `json:"missingDurationWarning,omitempty"`
MissingDurationCritical uint64 `json:"missingDurationCritical,omitempty"`
}
MonitorServiceMetric represents service metric monitor.
func (*MonitorServiceMetric) MonitorID ¶
func (m *MonitorServiceMetric) MonitorID() string
MonitorID returns monitor id.
func (*MonitorServiceMetric) MonitorName ¶
func (m *MonitorServiceMetric) MonitorName() string
MonitorName returns monitor name.
func (*MonitorServiceMetric) MonitorType ¶
func (m *MonitorServiceMetric) MonitorType() string
MonitorType returns monitor type.
type MonitoredStatus ¶ added in v0.13.0
type MonitoredStatus struct {
MonitorID string `json:"monitorId"`
Status string `json:"status"`
Detail MonitoredStatusDetail `json:"detail,omitempty"`
}
MonitoredStatus monitored status
type MonitoredStatusDetail ¶ added in v0.13.0
type MonitoredStatusDetail struct {
Type string `json:"type"`
Message string `json:"message,omitempty"`
Memo string `json:"memo,omitempty"`
}
MonitoredStatusDetail monitored status detail
type NotificationGroup ¶ added in v0.10.0
type NotificationGroup struct {
ID string `json:"id,omitempty"`
Name string `json:"name"`
NotificationLevel NotificationLevel `json:"notificationLevel"`
ChildNotificationGroupIDs []string `json:"childNotificationGroupIds"`
ChildChannelIDs []string `json:"childChannelIds"`
Monitors []*NotificationGroupMonitor `json:"monitors,omitempty"`
Services []*NotificationGroupService `json:"services,omitempty"`
}
NotificationGroup represents a Mackerel notification group. ref. https://mackerel.io/api-docs/entry/notification-groups
type NotificationGroupMonitor ¶ added in v0.10.0
type NotificationGroupMonitor struct {
ID string `json:"id"`
SkipDefault bool `json:"skipDefault"`
}
NotificationGroupMonitor represents a notification target monitor rule.
type NotificationGroupService ¶ added in v0.10.0
type NotificationGroupService struct {
Name string `json:"name"`
}
NotificationGroupService represents a notification target service.
type NotificationLevel ¶ added in v0.10.0
type NotificationLevel string
NotificationLevel represents a level of notification.
const ( NotificationLevelAll NotificationLevel = "all" NotificationLevelCritical NotificationLevel = "critical" )
NotificationLevels
type OrderDirection ¶ added in v0.38.0
type OrderDirection string
const ( OrderDirectionASC OrderDirection = "ASC" OrderDirectionDESC OrderDirection = "DESC" )
type PrioritizedLogger ¶ added in v0.5.0
type PrioritizedLogger interface {
Tracef(format string, v ...interface{})
Debugf(format string, v ...interface{})
Infof(format string, v ...interface{})
Warningf(format string, v ...interface{})
Errorf(format string, v ...interface{})
}
PrioritizedLogger is the interface that groups prioritized logging methods.
type Range ¶ added in v0.6.0
type Range struct {
Type string `json:"type"`
Period int64 `json:"period,omitempty"`
Offset int64 `json:"offset,omitempty"`
Start int64 `json:"start,omitempty"`
End int64 `json:"end,omitempty"`
}
Range information
func (Range) MarshalJSON ¶ added in v0.14.0
MarshalJSON marshals as JSON
type ReferenceLine ¶ added in v0.26.0
ReferenceLine information
type Resource ¶ added in v0.38.0
type Resource struct {
Attributes []*Attribute `json:"attributes"`
DroppedAttributesCount int `json:"droppedAttributesCount"`
}
Resource represents resource information
type RoleMetaDataResp ¶
type RoleMetaDataResp struct {
RoleMetaData RoleMetaData
LastModified time.Time
}
RoleMetaDataResp represents response for role metadata.
type Scope ¶ added in v0.38.0
type Scope struct {
Name string `json:"name"`
Version string `json:"version"`
Attributes []*Attribute `json:"attributes"`
DroppedAttributesCount int `json:"droppedAttributesCount"`
}
Scope represents scope information
type Service ¶
type Service struct {
Name string `json:"name"`
Memo string `json:"memo"`
Roles []string `json:"roles"`
}
Service represents Mackerel "service".
type ServiceMetaData ¶
type ServiceMetaData interface{}
ServiceMetaData represents service metadata body.
type ServiceMetaDataResp ¶
type ServiceMetaDataResp struct {
ServiceMetaData ServiceMetaData
LastModified time.Time
}
ServiceMetaDataResp represents response for service metadata.
type Span ¶ added in v0.38.0
type Span struct {
TraceID string `json:"traceId"`
SpanID string `json:"spanId"`
TraceState string `json:"traceState"`
ParentSpanID string `json:"parentSpanId,omitempty"`
Name string `json:"name"`
Kind SpanKind `json:"kind"`
StartTime time.Time `json:"startTime"`
EndTime time.Time `json:"endTime"`
Attributes []*Attribute `json:"attributes"`
DroppedAttributesCount int `json:"droppedAttributesCount"`
Events []*Event `json:"events"`
DroppedEventsCount int `json:"droppedEventsCount"`
Links []*Link `json:"links"`
DroppedLinksCount int `json:"droppedLinksCount"`
Status *Status `json:"status"`
Resource *Resource `json:"resource"`
Scope *Scope `json:"scope"`
}
Span represents a single span in a trace
type Status ¶ added in v0.38.0
type Status struct {
Message string `json:"message"`
Code StatusCode `json:"code"`
}
Status represents the execution state of a span
type StatusCode ¶ added in v0.38.0
type StatusCode string
StatusCode represents the status code of a span
const ( StatusCodeUnset StatusCode = "unset" StatusCodeOK StatusCode = "ok" StatusCodeError StatusCode = "error" )
Status code constants
type TraceAttributeFilter ¶ added in v0.38.0
type TraceAttributeFilter struct {
Key string `json:"key"`
Value string `json:"value"`
Operator TraceAttributeOperator `json:"operator"`
Type TraceAttributeValueType `json:"type"`
}
type TraceAttributeOperator ¶ added in v0.38.0
type TraceAttributeOperator string
const ( TraceAttributeOperatorEQ TraceAttributeOperator = "EQ" TraceAttributeOperatorNEQ TraceAttributeOperator = "NEQ" TraceAttributeOperatorGT TraceAttributeOperator = "GT" TraceAttributeOperatorGTE TraceAttributeOperator = "GTE" TraceAttributeOperatorLT TraceAttributeOperator = "LT" TraceAttributeOperatorLTE TraceAttributeOperator = "LTE" TraceAttributeOperatorSTARTSWITH TraceAttributeOperator = "STARTS_WITH" )
type TraceAttributeValueType ¶ added in v0.38.0
type TraceAttributeValueType string
const ( TraceAttributeValueTypeString TraceAttributeValueType = "string" TraceAttributeValueTypeInt TraceAttributeValueType = "int" TraceAttributeValueTypeDouble TraceAttributeValueType = "double" TraceAttributeValueTypeBool TraceAttributeValueType = "bool" )
type TraceOrder ¶ added in v0.38.0
type TraceOrder struct {
Column *TraceOrderColumn `json:"column"`
Direction *OrderDirection `json:"direction"`
}
type TraceOrderColumn ¶ added in v0.38.0
type TraceOrderColumn string
const ( TraceOrderColumnLATENCY TraceOrderColumn = "LATENCY" TraceOrderColumnSTARTAT TraceOrderColumn = "START_AT" )
type TraceResponse ¶ added in v0.38.0
type TraceResponse struct {
Spans []*Span `json:"spans"`
}
TraceResponse represents the response structure from the traces API
type UpdateAWSIntegrationParam ¶ added in v0.18.0
type UpdateAWSIntegrationParam CreateAWSIntegrationParam
UpdateAWSIntegrationParam parameters for UpdateAwsIntegration
type UpdateAlertParam ¶ added in v0.23.0
type UpdateAlertParam struct {
Memo string `json:"memo,omitempty"`
}
UpdateAlertParam is for UpdateAlert
type UpdateAlertResponse ¶ added in v0.23.0
type UpdateAlertResponse struct {
Memo string `json:"memo,omitempty"`
}
UpdateAlertResponse is for UpdateAlert
type UpdateHostParam ¶
type UpdateHostParam CreateHostParam
UpdateHostParam parameters for UpdateHost
type User ¶ added in v0.6.0
type User struct {
ID string `json:"id,omitempty"`
ScreenName string `json:"screenName,omitempty"`
Email string `json:"email,omitempty"`
Authority string `json:"authority,omitempty"`
IsInRegistrationProcess bool `json:"isInRegistrationProcess,omitempty"`
IsMFAEnabled bool `json:"isMFAEnabled,omitempty"`
AuthenticationMethods []string `json:"authenticationMethods,omitempty"`
JoinedAt int64 `json:"joinedAt,omitempty"`
}
User information
type Widget ¶ added in v0.6.0
type Widget struct {
Type string `json:"type"`
Title string `json:"title"`
Layout Layout `json:"layout"`
Metric Metric `json:"metric,omitempty"`
Graph Graph `json:"graph,omitempty"`
Range Range `json:"range,omitempty"`
Markdown string `json:"markdown,omitempty"`
ReferenceLines []ReferenceLine `json:"referenceLines,omitempty"`
// If this field is nil, it will be treated as a two-digit display after the decimal point.
FractionSize *int64 `json:"fractionSize,omitempty"`
Suffix string `json:"suffix,omitempty"`
FormatRules []FormatRule `json:"formatRules,omitempty"`
RoleFullName string `json:"roleFullname,omitempty"`
}
Widget information
Source Files
¶
- alert_group_settings.go
- alerts.go
- apm.go
- aws_integrations.go
- channels.go
- checks.go
- dashboards.go
- downtimes.go
- error.go
- graph_annotation.go
- graph_defs.go
- host_metadata.go
- hosts.go
- invitations.go
- mackerel.go
- metrics.go
- monitors.go
- notification_groups.go
- org.go
- role_metadata.go
- roles.go
- service_metadata.go
- services.go
- traces.go
- users.go