Prometheus PromQL Example Query: node exporter

For your Linux Node Exporter target, these are the most important PromQL queries for CPU, RAM, Disk, Network, Load, Uptime. Your uploaded metrics include Node Exporter metrics like node_cpu_seconds_total, node_memory_MemAvailable_bytes, node_filesystem_size_bytes, node_disk_*and node_network_*.

1. Server UP / DOWN

up{job="linux"}
Code language: JavaScript (javascript)

1 = server is up
0 = server is down


2. CPU Usage %

100 - (avg by(instance) (rate(node_cpu_seconds_total{job="linux",mode="idle"}[5m])) * 100)
Code language: JavaScript (javascript)

For one server:

100 - (avg(rate(node_cpu_seconds_total{job="linux",instance="172.31.2.24:9100",mode="idle"}[5m])) * 100)
Code language: JavaScript (javascript)

3. CPU Idle %

avg by(instance) (rate(node_cpu_seconds_total{job="linux",mode="idle"}[5m])) * 100
Code language: JavaScript (javascript)

4. CPU System Usage %

avg by(instance) (rate(node_cpu_seconds_total{job="linux",mode="system"}[5m])) * 100
Code language: JavaScript (javascript)

5. CPU User Usage %

avg by(instance) (rate(node_cpu_seconds_total{job="linux",mode="user"}[5m])) * 100
Code language: JavaScript (javascript)

6. CPU I/O Wait %

avg by(instance) (rate(node_cpu_seconds_total{job="linux",mode="iowait"}[5m])) * 100
Code language: JavaScript (javascript)

Very useful for finding slow disk/storage issues.


7. RAM Usage %

100 * (1 - (node_memory_MemAvailable_bytes{job="linux"} / node_memory_MemTotal_bytes{job="linux"}))
Code language: JavaScript (javascript)

8. RAM Available GB

node_memory_MemAvailable_bytes{job="linux"} / 1024 / 1024 / 1024
Code language: JavaScript (javascript)

9. RAM Total GB

node_memory_MemTotal_bytes{job="linux"} / 1024 / 1024 / 1024
Code language: JavaScript (javascript)

10. RAM Used GB

(node_memory_MemTotal_bytes{job="linux"} - node_memory_MemAvailable_bytes{job="linux"}) / 1024 / 1024 / 1024
Code language: JavaScript (javascript)

11. Disk Usage %

100 * (1 - (
  node_filesystem_avail_bytes{job="linux",fstype!~"tmpfs|overlay|squashfs"}
  /
  node_filesystem_size_bytes{job="linux",fstype!~"tmpfs|overlay|squashfs"}
))
Code language: JavaScript (javascript)

12. Disk Usage % Only Root /

100 * (1 - (
  node_filesystem_avail_bytes{job="linux",mountpoint="/"}
  /
  node_filesystem_size_bytes{job="linux",mountpoint="/"}
))
Code language: JavaScript (javascript)

13. Disk Free GB

node_filesystem_avail_bytes{job="linux",fstype!~"tmpfs|overlay|squashfs"} / 1024 / 1024 / 1024
Code language: JavaScript (javascript)

14. Disk Total GB

node_filesystem_size_bytes{job="linux",fstype!~"tmpfs|overlay|squashfs"} / 1024 / 1024 / 1024
Code language: JavaScript (javascript)

15. Disk Read MB/s

rate(node_disk_read_bytes_total{job="linux"}[5m]) / 1024 / 1024
Code language: JavaScript (javascript)

16. Disk Write MB/s

rate(node_disk_written_bytes_total{job="linux"}[5m]) / 1024 / 1024
Code language: JavaScript (javascript)

17. Disk Read IOPS

rate(node_disk_reads_completed_total{job="linux"}[5m])
Code language: JavaScript (javascript)

18. Disk Write IOPS

rate(node_disk_writes_completed_total{job="linux"}[5m])
Code language: JavaScript (javascript)

19. Network Receive MB/s

rate(node_network_receive_bytes_total{job="linux",device!="lo"}[5m]) / 1024 / 1024
Code language: JavaScript (javascript)

20. Network Transmit MB/s

rate(node_network_transmit_bytes_total{job="linux",device!="lo"}[5m]) / 1024 / 1024
Code language: JavaScript (javascript)

21. Network Receive Packets/s

rate(node_network_receive_packets_total{job="linux",device!="lo"}[5m])
Code language: JavaScript (javascript)

22. Network Transmit Packets/s

rate(node_network_transmit_packets_total{job="linux",device!="lo"}[5m])
Code language: JavaScript (javascript)

23. Network Errors

rate(node_network_receive_errs_total{job="linux",device!="lo"}[5m])
+
rate(node_network_transmit_errs_total{job="linux",device!="lo"}[5m])
Code language: JavaScript (javascript)

24. Network Drops

rate(node_network_receive_drop_total{job="linux",device!="lo"}[5m])
+
rate(node_network_transmit_drop_total{job="linux",device!="lo"}[5m])
Code language: JavaScript (javascript)

25. Load Average 1 Minute

node_load1{job="linux"}
Code language: JavaScript (javascript)

26. Load Average 5 Minutes

node_load5{job="linux"}
Code language: JavaScript (javascript)

27. Load Average 15 Minutes

node_load15{job="linux"}
Code language: JavaScript (javascript)

28. Running Processes

node_procs_running{job="linux"}
Code language: JavaScript (javascript)

29. Blocked Processes

node_procs_blocked{job="linux"}
Code language: JavaScript (javascript)

30. Server Uptime

time() - node_boot_time_seconds{job="linux"}
Code language: JavaScript (javascript)

In hours:

(time() - node_boot_time_seconds{job="linux"}) / 3600
Code language: JavaScript (javascript)

In days:

(time() - node_boot_time_seconds{job="linux"}) / 86400
Code language: JavaScript (javascript)

Best 10 PromQL for Linux Dashboard

Use these first:

up{job="linux"}
Code language: JavaScript (javascript)
100 - (avg by(instance) (rate(node_cpu_seconds_total{job="linux",mode="idle"}[5m])) * 100)
Code language: JavaScript (javascript)
100 * (1 - (node_memory_MemAvailable_bytes{job="linux"} / node_memory_MemTotal_bytes{job="linux"}))
Code language: JavaScript (javascript)
100 * (1 - (node_filesystem_avail_bytes{job="linux",mountpoint="/"} / node_filesystem_size_bytes{job="linux",mountpoint="/"}))
Code language: JavaScript (javascript)
rate(node_disk_read_bytes_total{job="linux"}[5m]) / 1024 / 1024
Code language: JavaScript (javascript)
rate(node_disk_written_bytes_total{job="linux"}[5m]) / 1024 / 1024
Code language: JavaScript (javascript)
rate(node_network_receive_bytes_total{job="linux",device!="lo"}[5m]) / 1024 / 1024
Code language: JavaScript (javascript)
rate(node_network_transmit_bytes_total{job="linux",device!="lo"}[5m]) / 1024 / 1024
Code language: JavaScript (javascript)
node_load1{job="linux"}
Code language: JavaScript (javascript)
(time() - node_boot_time_seconds{job="linux"}) / 86400
Code language: JavaScript (javascript)

For Grafana variables, replace:

job="linux"
Code language: JavaScript (javascript)

with:

job="$job", instance="$instance"
Code language: JavaScript (javascript)

Example PromQL for Prometheus Server


prometheus_http_requests_total
prometheus_http_requests_total{job="prometheus",group="canary"}
prometheus_http_requests_total{environment=~"staging|testing|development",method!="GET"}
prometheus_http_requests_total{job=~".*"} 
prometheus_http_requests_total{job=~".+"} 
prometheus_http_requests_total{job=~".*",method="get"} 
prometheus_http_requests_total[5m]
prometheus_http_requests_total{job="prometheus",group="canary"}[2h]
prometheus_http_requests_total{environment=~"staging|testing|development",method!="GET"}[60m]Code language: PHP (php)

Prometheus PromQL Example Query: node exporter

Metrics specific to the Node Exporter are prefixed with node_ and include metrics like node_cpu_seconds_total and node_exporter_build_info.


Metric Meaning
rate(node_cpu_seconds_total{mode=”system”}[1m]) The average amount of CPU time spent in system mode, per second, over the last minute (in seconds)
node_filesystem_avail_bytes The filesystem space available to non-root users (in bytes)
rate(node_network_receive_bytes_total[1m]) The average network traffic received, per second, over the last minute (in bytes)
Modern CPUs don't run at one constant frequency.

To save power CPUs can reduce the frequency they run at, which is quite useful for battery based devices like laptops. So while CPU metrics give you the proportion of time in each mode, one second of user time isn't always represent same amount of work as another second of user time. This can be a problem when running benchmarks.

Linux provides information about this under /sys/devices/system/cpuCode language: PHP (php)

CPU scheduling metrics from the node exporter

CPU frequency scaling metrics from the node exporter

ARP cache metrics from the node exporter

Using the group() aggregator in PromQL

Linux software RAID metrics from the node exporter

Time metric from the node exporter

Using Letsencrypt with the node exporter

Conntrack metrics from the node exporter

Kernel file descriptor metrics from the node exporter

Temperature and hardware monitoring metrics from the node exporter

Network interface metrics from the node exporter

Filesystem metrics from the node exporter

Analyse a metric by kernel version

Mapping iostat to the node exporter’s node_disk_* metrics

Using the textfile collector from a shell script

New Features in Node Exporter 0.16.0

Using group_left to calculate label proportions

Understanding Machine CPU usage

Monitoring directory sizes with the Textfile Collector

Find Trusted Cardiac Hospitals

Compare heart hospitals by city and services — all in one place.

Explore Hospitals

PakarPBN

A Private Blog Network (PBN) is a collection of websites that are controlled by a single individual or organization and used primarily to build backlinks to a “money site” in order to influence its ranking in search engines such as Google. The core idea behind a PBN is based on the importance of backlinks in Google’s ranking algorithm. Since Google views backlinks as signals of authority and trust, some website owners attempt to artificially create these signals through a controlled network of sites.

In a typical PBN setup, the owner acquires expired or aged domains that already have existing authority, backlinks, and history. These domains are rebuilt with new content and hosted separately, often using different IP addresses, hosting providers, themes, and ownership details to make them appear unrelated. Within the content published on these sites, links are strategically placed that point to the main website the owner wants to rank higher. By doing this, the owner attempts to pass link equity (also known as “link juice”) from the PBN sites to the target website.

The purpose of a PBN is to give the impression that the target website is naturally earning links from multiple independent sources. If done effectively, this can temporarily improve keyword rankings, increase organic visibility, and drive more traffic from search results.

Jasa Backlink

Download Anime Batch