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 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) DeleteRoleMetaData(serviceName, roleName, namespace string) error
- func (c *Client) DeleteService(serviceName string) (*Service, error)
- func (c *Client) DeleteServiceGraphDef(serviceName string, graphName string) error
- func (c *Client) DeleteServiceMetaData(serviceName, namespace string) error
- func (c *Client) DeleteUser(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) ListAWSIntegrationExcludableMetrics() (*ListAWSIntegrationExcludableMetrics, 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) 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) 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 Downtime
- type DowntimeRecurrence
- type DowntimeRecurrenceType
- type DowntimeWeekday
- type FileSystem
- type FindAlertLogsParam
- type FindAlertLogsResp
- type FindHostByCustomIdentifierParam
- type FindHostsParam
- type FormatRule
- type Graph
- type GraphAnnotation
- type GraphDefsMetric
- type GraphDefsParam
- type HeaderField
- type Host
- type HostMeta
- type HostMetaData
- type HostMetaDataResp
- type HostMetricValue
- type Interface
- type Invitation
- type Kernel
- type LatestMetricValues
- type Layout
- type ListAWSIntegrationExcludableMetrics
- 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 Org
- type PrioritizedLogger
- type Range
- type ReferenceLine
- type Role
- type RoleMetaData
- type RoleMetaDataResp
- type Roles
- type Service
- type ServiceMetaData
- type ServiceMetaDataResp
- 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" )
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 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) DeleteRoleMetaData ¶
DeleteRoleMetaData deletes a role metadata.
func (*Client) DeleteService ¶
DeleteService deletes a service.
func (*Client) DeleteServiceGraphDef ¶ added in v0.35.0
DeleteServiceGraphDef deletes a service metrics graph definition.
func (*Client) DeleteServiceMetaData ¶
DeleteServiceMetaData deletes a service metadata.
func (*Client) DeleteUser ¶ added in v0.7.0
DeleteUser deletes a user.
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) ListAWSIntegrationExcludableMetrics ¶ added in v0.18.0
func (c *Client) ListAWSIntegrationExcludableMetrics() (*ListAWSIntegrationExcludableMetrics, error)
ListAWSIntegrationExcludableMetrics lists excludable metrics for AWS integration.
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) 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) 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 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 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 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 ListAWSIntegrationExcludableMetrics ¶ added in v0.18.0
ListAWSIntegrationExcludableMetrics List of excludeable metric names for AWS integration
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 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 RoleMetaDataResp ¶
type RoleMetaDataResp struct {
RoleMetaData RoleMetaData
LastModified time.Time
}
RoleMetaDataResp represents response for role metadata.
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 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