passing AgentID when sending check results
This commit is contained in:
parent
e8f11a852e
commit
7509389cfc
@ -159,6 +159,7 @@ func (a *Agent) RunChecks(force bool) error {
|
|||||||
|
|
||||||
type ScriptCheckResult struct {
|
type ScriptCheckResult struct {
|
||||||
ID int `json:"id"`
|
ID int `json:"id"`
|
||||||
|
AgentID string `json:"agent_id"`
|
||||||
Stdout string `json:"stdout"`
|
Stdout string `json:"stdout"`
|
||||||
Stderr string `json:"stderr"`
|
Stderr string `json:"stderr"`
|
||||||
Retcode int `json:"retcode"`
|
Retcode int `json:"retcode"`
|
||||||
@ -172,6 +173,7 @@ func (a *Agent) ScriptCheck(data rmm.Check, r *resty.Client) {
|
|||||||
|
|
||||||
payload := ScriptCheckResult{
|
payload := ScriptCheckResult{
|
||||||
ID: data.CheckPK,
|
ID: data.CheckPK,
|
||||||
|
AgentID: a.AgentID,
|
||||||
Stdout: stdout,
|
Stdout: stdout,
|
||||||
Stderr: stderr,
|
Stderr: stderr,
|
||||||
Retcode: retcode,
|
Retcode: retcode,
|
||||||
@ -193,6 +195,7 @@ func (a *Agent) SendDiskCheckResult(payload DiskCheckResult, r *resty.Client) {
|
|||||||
|
|
||||||
type DiskCheckResult struct {
|
type DiskCheckResult struct {
|
||||||
ID int `json:"id"`
|
ID int `json:"id"`
|
||||||
|
AgentID string `json:"agent_id"`
|
||||||
MoreInfo string `json:"more_info"`
|
MoreInfo string `json:"more_info"`
|
||||||
PercentUsed float64 `json:"percent_used"`
|
PercentUsed float64 `json:"percent_used"`
|
||||||
Exists bool `json:"exists"`
|
Exists bool `json:"exists"`
|
||||||
@ -201,6 +204,7 @@ type DiskCheckResult struct {
|
|||||||
// DiskCheck checks disk usage
|
// DiskCheck checks disk usage
|
||||||
func (a *Agent) DiskCheck(data rmm.Check) (payload DiskCheckResult) {
|
func (a *Agent) DiskCheck(data rmm.Check) (payload DiskCheckResult) {
|
||||||
payload.ID = data.CheckPK
|
payload.ID = data.CheckPK
|
||||||
|
payload.AgentID = a.AgentID
|
||||||
|
|
||||||
usage, err := disk.Usage(data.Disk)
|
usage, err := disk.Usage(data.Disk)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -217,13 +221,14 @@ func (a *Agent) DiskCheck(data rmm.Check) (payload DiskCheckResult) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type CPUMemResult struct {
|
type CPUMemResult struct {
|
||||||
ID int `json:"id"`
|
ID int `json:"id"`
|
||||||
Percent int `json:"percent"`
|
AgentID string `json:"agent_id"`
|
||||||
|
Percent int `json:"percent"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// CPULoadCheck checks avg cpu load
|
// CPULoadCheck checks avg cpu load
|
||||||
func (a *Agent) CPULoadCheck(data rmm.Check, r *resty.Client) {
|
func (a *Agent) CPULoadCheck(data rmm.Check, r *resty.Client) {
|
||||||
payload := CPUMemResult{ID: data.CheckPK, Percent: a.GetCPULoadAvg()}
|
payload := CPUMemResult{ID: data.CheckPK, AgentID: a.AgentID, Percent: a.GetCPULoadAvg()}
|
||||||
_, err := r.R().SetBody(payload).Patch("/api/v3/checkrunner/")
|
_, err := r.R().SetBody(payload).Patch("/api/v3/checkrunner/")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
a.Logger.Debugln(err)
|
a.Logger.Debugln(err)
|
||||||
@ -236,7 +241,7 @@ func (a *Agent) MemCheck(data rmm.Check, r *resty.Client) {
|
|||||||
mem, _ := host.Memory()
|
mem, _ := host.Memory()
|
||||||
percent := (float64(mem.Used) / float64(mem.Total)) * 100
|
percent := (float64(mem.Used) / float64(mem.Total)) * 100
|
||||||
|
|
||||||
payload := CPUMemResult{ID: data.CheckPK, Percent: int(math.Round(percent))}
|
payload := CPUMemResult{ID: data.CheckPK, AgentID: a.AgentID, Percent: int(math.Round(percent))}
|
||||||
_, err := r.R().SetBody(payload).Patch("/api/v3/checkrunner/")
|
_, err := r.R().SetBody(payload).Patch("/api/v3/checkrunner/")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
a.Logger.Debugln(err)
|
a.Logger.Debugln(err)
|
||||||
@ -244,8 +249,9 @@ func (a *Agent) MemCheck(data rmm.Check, r *resty.Client) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type EventLogCheckResult struct {
|
type EventLogCheckResult struct {
|
||||||
ID int `json:"id"`
|
ID int `json:"id"`
|
||||||
Log []rmm.EventLogMsg `json:"log"`
|
AgentID string `json:"agent_id"`
|
||||||
|
Log []rmm.EventLogMsg `json:"log"`
|
||||||
}
|
}
|
||||||
|
|
||||||
func (a *Agent) EventLogCheck(data rmm.Check, r *resty.Client) {
|
func (a *Agent) EventLogCheck(data rmm.Check, r *resty.Client) {
|
||||||
@ -299,7 +305,7 @@ func (a *Agent) EventLogCheck(data rmm.Check, r *resty.Client) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
payload := EventLogCheckResult{ID: data.CheckPK, Log: log}
|
payload := EventLogCheckResult{ID: data.CheckPK, AgentID: a.AgentID, Log: log}
|
||||||
_, err := r.R().SetBody(payload).Patch("/api/v3/checkrunner/")
|
_, err := r.R().SetBody(payload).Patch("/api/v3/checkrunner/")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
a.Logger.Debugln(err)
|
a.Logger.Debugln(err)
|
||||||
@ -315,6 +321,7 @@ func (a *Agent) SendPingCheckResult(payload rmm.PingCheckResponse, r *resty.Clie
|
|||||||
|
|
||||||
func (a *Agent) PingCheck(data rmm.Check) (payload rmm.PingCheckResponse) {
|
func (a *Agent) PingCheck(data rmm.Check) (payload rmm.PingCheckResponse) {
|
||||||
payload.ID = data.CheckPK
|
payload.ID = data.CheckPK
|
||||||
|
payload.AgentID = a.AgentID
|
||||||
|
|
||||||
out, err := DoPing(data.IP)
|
out, err := DoPing(data.IP)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -331,6 +338,7 @@ func (a *Agent) PingCheck(data rmm.Check) (payload rmm.PingCheckResponse) {
|
|||||||
|
|
||||||
type WinSvcCheckResult struct {
|
type WinSvcCheckResult struct {
|
||||||
ID int `json:"id"`
|
ID int `json:"id"`
|
||||||
|
AgentID string `json:"agent_id"`
|
||||||
MoreInfo string `json:"more_info"`
|
MoreInfo string `json:"more_info"`
|
||||||
Status string `json:"status"`
|
Status string `json:"status"`
|
||||||
}
|
}
|
||||||
@ -344,6 +352,7 @@ func (a *Agent) SendWinSvcCheckResult(payload WinSvcCheckResult, r *resty.Client
|
|||||||
|
|
||||||
func (a *Agent) WinSvcCheck(data rmm.Check) (payload WinSvcCheckResult) {
|
func (a *Agent) WinSvcCheck(data rmm.Check) (payload WinSvcCheckResult) {
|
||||||
payload.ID = data.CheckPK
|
payload.ID = data.CheckPK
|
||||||
|
payload.AgentID = a.AgentID
|
||||||
|
|
||||||
status, err := GetServiceStatus(data.ServiceName)
|
status, err := GetServiceStatus(data.ServiceName)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -69,9 +69,10 @@ type AgentInfo struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type PingCheckResponse struct {
|
type PingCheckResponse struct {
|
||||||
ID int `json:"id"`
|
ID int `json:"id"`
|
||||||
Status string `json:"status"`
|
AgentID string `json:"agent_id"`
|
||||||
Output string `json:"output"`
|
Status string `json:"status"`
|
||||||
|
Output string `json:"output"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type WinUpdateResult struct {
|
type WinUpdateResult struct {
|
||||||
|
Loading…
Reference in New Issue
Block a user