Documentation
¶
Index ¶
- Constants
- type APIError
- type Alert
- type AlertsResp
- type BlockDevice
- type CPU
- type Channel
- type CheckConfig
- type CheckReport
- type CheckReports
- type CheckSource
- type CheckStatus
- type Client
- func (c *Client) CloseAlert(alertID string, reason string) (*Alert, 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(payloads []*GraphDefsParam) error
- func (c *Client) CreateHost(param *CreateHostParam) (string, error)
- func (c *Client) CreateMonitor(param Monitor) (Monitor, error)
- func (c *Client) CreateRole(serviceName string, param *CreateRoleParam) (*Role, error)
- func (c *Client) CreateService(param *CreateServiceParam) (*Service, error)
- func (c *Client) DeleteChannel(id 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) DeleteHostMetaData(hostID, namespace string) error
- func (c *Client) DeleteMonitor(monitorID string) (Monitor, 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) 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) 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(id string) (*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) 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) 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) ListHostMetricNames(id string) ([]string, error)
- func (c *Client) ListServiceMetricNames(serviceName string) ([]string, error)
- func (c *Client) PostCheckReports(crs *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)
- 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)
- 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(id string) 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)
- type Cloud
- type CreateHostParam
- type CreateRoleParam
- type CreateServiceParam
- type Dashboard
- type Downtime
- type DowntimeRecurrence
- type DowntimeRecurrenceType
- type DowntimeWeekday
- type FileSystem
- type FindHostsParam
- 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 Memory
- type Mentions
- type Metric
- type MetricValue
- type Monitor
- type MonitorAnomalyDetection
- type MonitorConnectivity
- type MonitorExpression
- type MonitorExternalHTTP
- type MonitorHostMetric
- type MonitorServiceMetric
- type Org
- type PrioritizedLogger
- type Range
- type Role
- type RoleMetaData
- type RoleMetaDataResp
- type Roles
- type Service
- type ServiceMetaData
- type ServiceMetaDataResp
- 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 ¶
This section is empty.
Types ¶
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"`
}
Alert information
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"`
// 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) CloseAlert ¶
CloseAlert close alert
func (*Client) CreateChannel ¶ added in v0.9.0
CreateChannel requests the channels API with the given params to create a channel and returns the created channel.
func (*Client) CreateDashboard ¶
CreateDashboard creating 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 graph annotation.
func (*Client) CreateGraphDefs ¶
func (c *Client) CreateGraphDefs(payloads []*GraphDefsParam) error
CreateGraphDefs create graph defs
func (*Client) CreateHost ¶
func (c *Client) CreateHost(param *CreateHostParam) (string, error)
CreateHost creating host
func (*Client) CreateMonitor ¶
CreateMonitor creating monitor
func (*Client) CreateRole ¶
func (c *Client) CreateRole(serviceName string, param *CreateRoleParam) (*Role, error)
CreateRole creates role.
func (*Client) CreateService ¶
func (c *Client) CreateService(param *CreateServiceParam) (*Service, error)
CreateService creates service
func (*Client) DeleteChannel ¶ added in v0.9.0
DeleteChannel requests the channels API with the given id to delete the specified channel, and returns the deleted channel.
func (*Client) DeleteDashboard ¶
DeleteDashboard delete dashboard
func (*Client) DeleteDowntime ¶ added in v0.8.0
DeleteDowntime deletes downtime
func (*Client) DeleteGraphAnnotation ¶
func (c *Client) DeleteGraphAnnotation(annotationID string) (*GraphAnnotation, error)
DeleteGraphAnnotation deletes graph annotation.
func (*Client) DeleteHostMetaData ¶
DeleteHostMetaData delete host metadata.
func (*Client) DeleteMonitor ¶
DeleteMonitor update monitor
func (*Client) DeleteRole ¶
DeleteRole deletes role.
func (*Client) DeleteRoleMetaData ¶
DeleteRoleMetaData delete role metadata.
func (*Client) DeleteService ¶
DeleteService deletes service
func (*Client) DeleteServiceMetaData ¶
DeleteServiceMetaData delete service metadata.
func (*Client) DeleteUser ¶ added in v0.7.0
DeleteUser delete users.
func (*Client) FetchHostMetricValues ¶
func (c *Client) FetchHostMetricValues(hostID string, metricName string, from int64, to int64) ([]MetricValue, error)
FetchHostMetricValues retrieves the metric values for a Host
func (*Client) FetchLatestMetricValues ¶
func (c *Client) FetchLatestMetricValues(hostIDs []string, metricNames []string) (LatestMetricValues, error)
FetchLatestMetricValues fetch latest metrics
func (*Client) FetchServiceMetricValues ¶
func (c *Client) FetchServiceMetricValues(serviceName string, metricName string, from int64, to int64) ([]MetricValue, error)
FetchServiceMetricValues retrieves the metric values for a Service
func (*Client) FindAlerts ¶
func (c *Client) FindAlerts() (*AlertsResp, error)
FindAlerts find open alerts
func (*Client) FindAlertsByNextID ¶ added in v0.1.0
func (c *Client) FindAlertsByNextID(nextID string) (*AlertsResp, error)
FindAlertsByNextID find next open alerts by next id
func (*Client) FindChannels ¶ added in v0.9.0
FindChannels requests the channels API and returns a list of Channel
func (*Client) FindDashboard ¶
FindDashboard find dashboard
func (*Client) FindDashboards ¶
FindDashboards find 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 annotation.
func (*Client) FindHosts ¶
func (c *Client) FindHosts(param *FindHostsParam) ([]*Host, error)
FindHosts find hosts
func (*Client) FindInvitations ¶ added in v0.9.0
func (c *Client) FindInvitations() ([]*Invitation, error)
FindInvitations find invitations.
func (*Client) FindMonitors ¶
FindMonitors find monitors
func (*Client) FindServices ¶
FindServices finds services.
func (*Client) FindWithClosedAlerts ¶ added in v0.1.0
func (c *Client) FindWithClosedAlerts() (*AlertsResp, error)
FindWithClosedAlerts find open and close alerts
func (*Client) FindWithClosedAlertsByNextID ¶ added in v0.1.0
func (c *Client) FindWithClosedAlertsByNextID(nextID string) (*AlertsResp, error)
FindWithClosedAlertsByNextID find open and close alerts by next id
func (*Client) GetHostMetaData ¶
func (c *Client) GetHostMetaData(hostID, namespace string) (*HostMetaDataResp, error)
GetHostMetaData find host metadata.
func (*Client) GetHostMetaDataNameSpaces ¶
GetHostMetaDataNameSpaces fetches namespaces of host metadata.
func (*Client) GetMonitor ¶
GetMonitor get monitor.
func (*Client) GetRoleMetaData ¶
func (c *Client) GetRoleMetaData(serviceName, roleName, namespace string) (*RoleMetaDataResp, error)
GetRoleMetaData find role metadata.
func (*Client) GetRoleMetaDataNameSpaces ¶
GetRoleMetaDataNameSpaces fetches namespaces of role metadata.
func (*Client) GetServiceMetaData ¶
func (c *Client) GetServiceMetaData(serviceName, namespace string) (*ServiceMetaDataResp, error)
GetServiceMetaData find service metadata.
func (*Client) GetServiceMetaDataNameSpaces ¶
GetServiceMetaDataNameSpaces fetches namespaces of service metadata.
func (*Client) ListHostMetricNames ¶
ListHostMetricNames lists metric names of a host
func (*Client) ListServiceMetricNames ¶
ListServiceMetricNames lists metric names of a service
func (*Client) PostCheckReports ¶
func (c *Client) PostCheckReports(crs *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 post service metrics
func (*Client) PutHostMetaData ¶
func (c *Client) PutHostMetaData(hostID, namespace string, metadata HostMetaData) error
PutHostMetaData put host metadata.
func (*Client) PutRoleMetaData ¶
func (c *Client) PutRoleMetaData(serviceName, roleName, namespace string, metadata RoleMetaData) error
PutRoleMetaData put role metadata.
func (*Client) PutServiceMetaData ¶
func (c *Client) PutServiceMetaData(serviceName, namespace string, metadata ServiceMetaData) error
PutServiceMetaData put service metadata.
func (*Client) RetireHost ¶
RetireHost retuire the host
func (*Client) UpdateDashboard ¶
UpdateDashboard update 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 graph annotation.
func (*Client) UpdateHost ¶
func (c *Client) UpdateHost(hostID string, param *UpdateHostParam) (string, error)
UpdateHost updates host
func (*Client) UpdateHostRoleFullnames ¶
UpdateHostRoleFullnames updates host roles
func (*Client) UpdateHostStatus ¶
UpdateHostStatus updates host status
type Cloud ¶
type Cloud struct {
Provider string `json:"provider,omitempty"`
MetaData interface{} `json:"metadata,omitempty"`
}
Cloud cloud
type CreateHostParam ¶
type CreateHostParam struct {
Name string `json:"name"`
DisplayName string `json:"displayName,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 {
// Common to legacy dashboard and current dashboard
ID string `json:"id,omitempty"`
Title string `json:"title,omitempty"`
URLPath string `json:"urlPath,omitempty"`
CreatedAt int64 `json:"createdAt,omitempty"`
UpdatedAt int64 `json:"updatedAt,omitempty"`
// current dashboard
Memo string `json:"memo,omitempty"`
Widgets []Widget `json:"widgets,omitenpty"`
// legacy dashboard
IsLegacy bool `json:"isLegacy,omitempty"`
BodyMarkDown string `json:"bodyMarkdown,omitempty"`
}
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 FindHostsParam ¶
type FindHostsParam struct {
Service string
Roles []string
Name string
Statuses []string
CustomIdentifier string
}
FindHostsParam parameters for FindHosts
type Graph ¶ added in v0.6.0
type Graph struct {
Type string `json:"type,omitempty"`
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"`
}
Graph information
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 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"`
Type string `json:"type"`
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 getrolefullnames
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,omitempty"`
Y int64 `json:"y,omitempty"`
Width int64 `json:"width,omitempty"`
Height int64 `json:"height,omitempty"`
}
Layout information
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,omitempty"`
Name string `json:"name,omitempty"`
HostID string `json:"hostId,omitempty"`
ServiceName string `json:"serviceName,omitempty"`
Expression string `json:"expression,omitempty"`
}
Metric information
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
}
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"`
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"`
}
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"`
// 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 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 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,omitempty"`
Period int64 `json:"period,omitempty"`
Offset int64 `json:"offset,omitempty"`
Start int64 `json:"start,omitempty"`
End int64 `json:"end,omitempty"`
}
Range 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 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,omitempty"`
Title string `json:"title,omitempty"`
Layout Layout `json:"layout,omitempty"`
Metric Metric `json:"metric,omitempty"`
Graph Graph `json:"graph,omitempty"`
Range Range `json:"range,omitempty"`
Markdown string `json:"markdown,omitempty"`
}
Widget information