github.com/netdata/go.d.plugin@v0.58.1/modules/httpcheck/charts.go (about)

     1  // SPDX-License-Identifier: GPL-3.0-or-later
     2  
     3  package httpcheck
     4  
     5  import (
     6  	"github.com/netdata/go.d.plugin/agent/module"
     7  )
     8  
     9  const (
    10  	prioResponseTime = module.Priority + iota
    11  	prioResponseLength
    12  	prioResponseStatus
    13  	prioResponseInStatusDuration
    14  )
    15  
    16  var httpCheckCharts = module.Charts{
    17  	responseTimeChart.Copy(),
    18  	responseLengthChart.Copy(),
    19  	responseStatusChart.Copy(),
    20  	responseInStatusDurationChart.Copy(),
    21  }
    22  
    23  var responseTimeChart = module.Chart{
    24  	ID:       "response_time",
    25  	Title:    "HTTP Response Time",
    26  	Units:    "ms",
    27  	Fam:      "response",
    28  	Ctx:      "httpcheck.response_time",
    29  	Priority: prioResponseTime,
    30  	Dims: module.Dims{
    31  		{ID: "time"},
    32  	},
    33  }
    34  
    35  var responseLengthChart = module.Chart{
    36  	ID:       "response_length",
    37  	Title:    "HTTP Response Body Length",
    38  	Units:    "characters",
    39  	Fam:      "response",
    40  	Ctx:      "httpcheck.response_length",
    41  	Priority: prioResponseLength,
    42  	Dims: module.Dims{
    43  		{ID: "length"},
    44  	},
    45  }
    46  
    47  var responseStatusChart = module.Chart{
    48  	ID:       "request_status",
    49  	Title:    "HTTP Check Status",
    50  	Units:    "boolean",
    51  	Fam:      "status",
    52  	Ctx:      "httpcheck.status",
    53  	Priority: prioResponseStatus,
    54  	Dims: module.Dims{
    55  		{ID: "success"},
    56  		{ID: "no_connection"},
    57  		{ID: "timeout"},
    58  		{ID: "redirect"},
    59  		{ID: "bad_content"},
    60  		{ID: "bad_status"},
    61  		{ID: "bad_header"},
    62  	},
    63  }
    64  
    65  var responseInStatusDurationChart = module.Chart{
    66  	ID:       "current_state_duration",
    67  	Title:    "HTTP Current State Duration",
    68  	Units:    "seconds",
    69  	Fam:      "status",
    70  	Ctx:      "httpcheck.in_state",
    71  	Priority: prioResponseInStatusDuration,
    72  	Dims: module.Dims{
    73  		{ID: "in_state", Name: "time"},
    74  	},
    75  }