diff options
Diffstat (limited to '')
-rw-r--r-- | src/go/plugin/go.d/modules/litespeed/charts.go | 152 |
1 files changed, 152 insertions, 0 deletions
diff --git a/src/go/plugin/go.d/modules/litespeed/charts.go b/src/go/plugin/go.d/modules/litespeed/charts.go new file mode 100644 index 000000000..b7309f287 --- /dev/null +++ b/src/go/plugin/go.d/modules/litespeed/charts.go @@ -0,0 +1,152 @@ +// SPDX-License-Identifier: GPL-3.0-or-later + +package litespeed + +import "github.com/netdata/netdata/go/plugins/plugin/go.d/agent/module" + +const ( + prioRequests = module.Priority + iota + prioRequestsProcessing + prioNetThroughputHttp + prioNetThroughputHttps + prioConnectionsHttp + prioConnectionsHttps + prioPublicCacheHits + prioPrivateCacheHits + prioStaticHits +) + +var charts = module.Charts{ + requestsChart.Copy(), + requestsProcessingChart.Copy(), + + netThroughputHttpChart.Copy(), + netThroughputHttpsChart.Copy(), + + connectionsHttpChart.Copy(), + connectionsHttpsChart.Copy(), + + publicCacheHitsChart.Copy(), + privateCacheHitsChart.Copy(), + staticCacheHitsChart.Copy(), +} + +var ( + requestsChart = module.Chart{ + ID: "requests", + Title: "Requests", + Units: "requests/s", + Fam: "requests", + Ctx: "litespeed.requests", + Priority: prioRequests, + Dims: module.Dims{ + {ID: "req_per_sec", Name: "requests", Div: precision}, + }, + } + requestsProcessingChart = module.Chart{ + ID: "requests_processing", + Title: "Processing requests", + Units: "requests", + Fam: "requests", + Ctx: "litespeed.requests_processing", + Priority: prioRequestsProcessing, + Dims: module.Dims{ + {ID: "req_processing", Name: "processing"}, + }, + } +) + +var ( + netThroughputHttpChart = module.Chart{ + ID: "net_throughput_http", + Title: "HTTP throughput", + Units: "kilobits/s", + Fam: "throughput", + Ctx: "litespeed.net_throughput", + Type: module.Area, + Priority: prioNetThroughputHttp, + Dims: module.Dims{ + {ID: "bps_in", Name: "in"}, + {ID: "bps_out", Name: "out", Div: -1}, + }, + } + netThroughputHttpsChart = module.Chart{ + ID: "net_throughput_https", + Title: "HTTPs throughput", + Units: "kilobits/s", + Fam: "throughput", + Ctx: "litespeed.net_ssl_throughput", + Type: module.Area, + Priority: prioNetThroughputHttps, + Dims: module.Dims{ + {ID: "ssl_bps_in", Name: "in"}, + {ID: "ssl_bps_out", Name: "out", Div: -1}, + }, + } +) + +var ( + connectionsHttpChart = module.Chart{ + ID: "connections_http", + Title: "HTTP connections", + Units: "connections", + Fam: "connections", + Ctx: "litespeed.connections", + Type: module.Stacked, + Priority: prioConnectionsHttp, + Dims: module.Dims{ + {ID: "availconn", Name: "free"}, + {ID: "plainconn", Name: "used"}, + }, + } + connectionsHttpsChart = module.Chart{ + ID: "connections_https", + Title: "HTTPs connections", + Units: "connections", + Fam: "connections", + Ctx: "litespeed.ssl_connections", + Type: module.Stacked, + Priority: prioConnectionsHttps, + Dims: module.Dims{ + {ID: "availssl", Name: "free"}, + {ID: "sslconn", Name: "used"}, + }, + } +) + +var ( + publicCacheHitsChart = module.Chart{ + ID: "pub_cache_hits", + Title: "Public cache hits", + Units: "hits/s", + Fam: "cache", + Ctx: "litespeed.public_cache", + Priority: prioPublicCacheHits, + Dims: module.Dims{ + {ID: "pub_cache_hits_per_sec", Name: "hits", Div: precision}, + }, + } + privateCacheHitsChart = module.Chart{ + ID: "private_cache_hits", + Title: "Private cache hits", + Units: "hits/s", + Fam: "cache", + Ctx: "litespeed.private_cache", + Priority: prioPrivateCacheHits, + Dims: module.Dims{ + {ID: "private_cache_hits_per_sec", Name: "hits", Div: precision}, + }, + } + + staticCacheHitsChart = module.Chart{ + ID: "static_hits", + Title: "Static hits", + Units: "hits/s", + Fam: "static", + Ctx: "litespeed.static", + Priority: prioStaticHits, + Dims: module.Dims{ + {ID: "static_hits_per_sec", Name: "hits", Div: precision}, + }, + } +) |