Find the Best Cosmetic Hospitals

Explore trusted cosmetic hospitals and make a confident choice for your transformation.

“Invest in yourself — your confidence is always worth it.”

Explore Cosmetic Hospitals

Start your journey today — compare options in one place.

Create Graphite Dashboards and Alerts in Grafana 13 using Telegraf Linux Metrics

Lab Goal

In this lab, students will learn how to use Grafana 13 with Graphite as a data source and create a Linux monitoring dashboard using metrics collected by Telegraf.

This lab is based only on the real metrics already stored in your Graphite server. Your uploaded output confirms that the valid metric prefix is:

telegraf.linux-demo.*
Code language: CSS (css)

It also confirms that servers.* returns empty, so this lab will not use servers.*.

Grafana includes built-in support for Graphite, and the Graphite query editor helps users browse metric paths and build Graphite queries inside Grafana. (Grafana Labs)


Part 1: Lab Environment

Existing Setup

You already have:

Grafana UI:
http://32.192.207.253:3000

Graphite Web UI:
http://<server-ip>:8080

Docker containers:
graphite
telegraf
Code language: JavaScript (javascript)

Your Docker output shows:

graphiteapp/graphite-statsd:latest
telegraf:latest

Graphite is exposed as:

Host port 8080 -> Graphite Web UI
Host port 2003 -> Carbon plaintext metric receiver
Host port 2004 -> Carbon pickle receiver

Part 2: Important Rule for This Lab

Students must understand one important thing:

Graphite stores metrics as .wsp files on disk,
but Grafana queries should not include .wsp.
Code language: CSS (css)

For example, the file exists as:

/opt/graphite/storage/whisper/telegraf/linux-demo/cpu/usage_active.wsp

But in Grafana, the query should be:

telegraf.linux-demo.cpu.usage_active
Code language: CSS (css)

Not:

telegraf.linux-demo.cpu.usage_active.wsp
Code language: CSS (css)

Part 3: Verify Graphite and Telegraf Containers

Ask students to log in to the Linux server and run:

docker ps

Expected result should show containers similar to:

graphite
telegraf

Example:

graphiteapp/graphite-statsd:latest
telegraf:latest

Explain to students:

Graphite is storing and serving metrics.
Telegraf is collecting Linux system metrics and sending them to Graphite.
Grafana will read metrics from Graphite and display dashboards.
Code language: JavaScript (javascript)

Part 4: Verify Metrics Stored in Graphite

Run this command:

curl "http://localhost:8080/metrics/find?query=*"
Code language: JavaScript (javascript)

Expected output should include:

carbon
dummy
stats
stats_counts
statsd
telegraf

Now check the Telegraf metric tree:

curl "http://localhost:8080/metrics/find?query=telegraf.*"
Code language: JavaScript (javascript)

Expected output should include:

linux-demo

Now check the metric groups under linux-demo:

curl "http://localhost:8080/metrics/find?query=telegraf.linux-demo.*"
Code language: JavaScript (javascript)

Expected metric groups:

cpu
mem
disk
diskio
kernel
net
processes
swap
system

Part 5: Correct Command to List Real Graphite Metrics

Use this command to list all stored Telegraf metrics from Whisper storage:

docker exec graphite find /opt/graphite/storage/whisper/telegraf -type f

To convert file paths into Graphite query names, use:

docker exec graphite find /opt/graphite/storage/whisper/telegraf -type f \
| sed 's#/opt/graphite/storage/whisper/##; s#/#.#g; s#\.wsp$##' \
| sort
Code language: JavaScript (javascript)

If students still see .wsp at the end, use this safer command:

docker exec graphite find /opt/graphite/storage/whisper/telegraf -type f \
| tr -d '\r' \
| sed 's#/opt/graphite/storage/whisper/##; s#/#.#g; s#\.wsp$##' \
| sort
Code language: JavaScript (javascript)

Explain:

The .wsp file is the physical Whisper database file.
Grafana query uses the logical metric path without .wsp.
Code language: CSS (css)

Part 6: Add Graphite Data Source in Grafana 13

Step 1: Open Grafana

Open:

http://32.192.207.253:3000
Code language: JavaScript (javascript)

Login to Grafana.


Step 2: Go to Data Sources

From the left menu:

Connections → Data sources

Or:

Connections → Add new connection
Code language: JavaScript (javascript)

Grafana documentation also describes adding Graphite from the left-side Connections menu. (Grafana Labs)


Step 3: Select Graphite

Search for:

Graphite

Click:

Add new data source
Code language: JavaScript (javascript)

Step 4: Configure Graphite URL

Use this if Grafana is running on the same Linux VM where Docker Graphite is exposed:

http://localhost:8080
Code language: JavaScript (javascript)

If that does not work, use the server IP:

http://<server-public-ip>:8080
Code language: HTML, XML (xml)

Example:

http://32.192.207.253:8080
Code language: JavaScript (javascript)

Use:

Access: Server / Proxy
Code language: JavaScript (javascript)

Step 5: Save and Test

Click:

Save & test

Expected result:

Data source is working

If it fails, check:

docker ps

Then confirm Graphite is reachable:

curl "http://localhost:8080/metrics/find?query=telegraf.*"
Code language: JavaScript (javascript)

Part 7: Explore Metrics in Grafana

Before creating dashboards, students should explore metrics.

From the left menu:

Explore

Select the Graphite data source.

Try this query:

telegraf.linux-demo.cpu.usage_active
Code language: CSS (css)

Click:

Run query

Students should see a CPU usage graph.

Now try:

telegraf.linux-demo.mem.used_percent
Code language: CSS (css)

Then:

telegraf.linux-demo.disk.used_percent
Code language: CSS (css)

Explain:

Explore is used for testing queries before adding them to dashboards.
Dashboard panels are created after we know the query is working.

Part 8: Create Dashboard

From the left menu:

Dashboards

Click:

New
Code language: PHP (php)

Then:

New dashboard
Code language: PHP (php)

Click:

Add visualization

Select:

Graphite

Dashboard name:

Linux Server Monitoring - Graphite Telegraf

Part 9: Dashboard Layout

Create these dashboard rows:

1. System Overview
2. CPU Monitoring
3. Memory Monitoring
4. Disk Monitoring
5. Disk I/O Monitoring
6. Network Monitoring
7. Swap Monitoring
8. Process Monitoring
9. Kernel Monitoring

Part 10: System Overview Panels

Panel 1: CPU Active Usage

Panel title:

CPU Active Usage %

Query:

telegraf.linux-demo.cpu.usage_active
Code language: CSS (css)

Visualization:

Stat

Unit:

Percent (0-100)

Thresholds:

Green: 0
Yellow: 70
Red: 90
Code language: HTTP (http)

Explanation for students:

This shows how much CPU is actively being used.

Panel 2: Memory Used %

Panel title:

Memory Used %

Query:

telegraf.linux-demo.mem.used_percent
Code language: CSS (css)

Visualization:

Stat

Unit:

Percent (0-100)

Thresholds:

Green: 0
Yellow: 70
Red: 90
Code language: HTTP (http)

Panel 3: Disk Used %

Panel title:

Disk Used %

Query:

telegraf.linux-demo.disk.used_percent
Code language: CSS (css)

Visualization:

Stat

Unit:

Percent (0-100)

Thresholds:

Green: 0
Yellow: 75
Red: 90
Code language: HTTP (http)

Panel 4: System Load 1 Minute

Panel title:

System Load 1 Minute

Query:

telegraf.linux-demo.system.load1
Code language: CSS (css)

Visualization:

Stat

Unit:

None

Explanation:

Load average shows how busy the system is.
A load close to or higher than the number of CPUs may indicate pressure.

Panel 5: System Uptime

Panel title:

System Uptime

Query:

telegraf.linux-demo.system.uptime
Code language: CSS (css)

Visualization:

Stat

Unit:

Seconds

Explanation:

Uptime shows how long the Linux system has been running.

Part 11: CPU Monitoring Row

Panel: CPU Usage Breakdown

Panel title:

CPU Usage Breakdown

Visualization:

Time series

Queries:

alias(telegraf.linux-demo.cpu.usage_user, 'User CPU %')
alias(telegraf.linux-demo.cpu.usage_system, 'System CPU %')
alias(telegraf.linux-demo.cpu.usage_iowait, 'IO Wait CPU %')
alias(telegraf.linux-demo.cpu.usage_idle, 'Idle CPU %')
Code language: JavaScript (javascript)

Unit:

Percent (0-100)

Explanation:

User CPU means application workload.
System CPU means kernel workload.
IO wait means CPU is waiting for disk or I/O.
Idle means CPU is free.

Panel: CPU Active Usage Trend

Panel title:

CPU Active Usage Trend

Query:

telegraf.linux-demo.cpu.usage_active
Code language: CSS (css)

Visualization:

Time series

Unit:

Percent (0-100)

Part 12: Memory Monitoring Row

Panel: Memory Used and Available %

Panel title:

Memory Usage %

Queries:

alias(telegraf.linux-demo.mem.used_percent, 'Used Memory %')
alias(telegraf.linux-demo.mem.available_percent, 'Available Memory %')
Code language: JavaScript (javascript)

Visualization:

Time series

Unit:

Percent (0-100)

Panel: Memory Used and Free

Panel title:

Memory Used and Free

Queries:

alias(telegraf.linux-demo.mem.used, 'Used Memory')
alias(telegraf.linux-demo.mem.free, 'Free Memory')
alias(telegraf.linux-demo.mem.available, 'Available Memory')
Code language: JavaScript (javascript)

Visualization:

Time series

Unit:

Bytes

Panel: Memory Cache and Buffer

Panel title:

Memory Cache and Buffer

Queries:

alias(telegraf.linux-demo.mem.cached, 'Cached Memory')
alias(telegraf.linux-demo.mem.buffered, 'Buffered Memory')
Code language: JavaScript (javascript)

Visualization:

Time series

Unit:

Bytes

Part 13: Disk Monitoring Row

Panel: Disk Used %

Panel title:

Disk Used %

Query:

telegraf.linux-demo.disk.used_percent
Code language: CSS (css)

Visualization:

Gauge

Unit:

Percent (0-100)

Thresholds:

Green: 0
Yellow: 75
Red: 90
Code language: HTTP (http)

Panel: Disk Used and Free

Panel title:

Disk Used and Free

Queries:

alias(telegraf.linux-demo.disk.used, 'Disk Used')
alias(telegraf.linux-demo.disk.free, 'Disk Free')
alias(telegraf.linux-demo.disk.total, 'Disk Total')
Code language: JavaScript (javascript)

Visualization:

Time series

Unit:

Bytes

Panel: Disk Inode Usage

Panel title:

Disk Inode Usage %

Query:

telegraf.linux-demo.disk.inodes_used_percent
Code language: CSS (css)

Visualization:

Gauge

Unit:

Percent (0-100)

Explanation:

Inodes are file metadata records.
A disk can fail to create new files if inodes are full, even when disk space is available.
Code language: JavaScript (javascript)

Part 14: Disk I/O Monitoring Row

Panel: Disk I/O Utilization

Panel title:

Disk I/O Utilization

Query:

telegraf.linux-demo.diskio.io_util
Code language: CSS (css)

Visualization:

Time series

Unit:

Percent (0-100)

Panel: Disk Read and Write Bytes per Second

Panel title:

Disk Read/Write Bytes per Second

Queries:

alias(perSecond(telegraf.linux-demo.diskio.read_bytes), 'Read Bytes/sec')
alias(perSecond(telegraf.linux-demo.diskio.write_bytes), 'Write Bytes/sec')
Code language: JavaScript (javascript)

Visualization:

Time series

Unit:

Bytes/sec

Explanation:

read_bytes and write_bytes are counters.
perSecond() converts them into a rate, which is easier to understand.

Panel: Disk Reads and Writes per Second

Panel title:

Disk Reads/Writes per Second

Queries:

alias(perSecond(telegraf.linux-demo.diskio.reads), 'Reads/sec')
alias(perSecond(telegraf.linux-demo.diskio.writes), 'Writes/sec')
Code language: JavaScript (javascript)

Visualization:

Time series

Unit:

Operations/sec

Panel: Disk I/O Await

Panel title:

Disk I/O Await

Query:

telegraf.linux-demo.diskio.io_await
Code language: CSS (css)

Visualization:

Time series

Unit:

Milliseconds

Explanation:

IO await shows how long disk operations are waiting.
High values may indicate slow disk or heavy I/O.
Code language: JavaScript (javascript)

Part 15: Network Monitoring Row

Panel: Network Traffic Bytes per Second

Panel title:

Network Traffic

Queries:

alias(perSecond(telegraf.linux-demo.net.bytes_recv), 'Bytes Received/sec')
alias(perSecond(telegraf.linux-demo.net.bytes_sent), 'Bytes Sent/sec')
Code language: JavaScript (javascript)

Visualization:

Time series

Unit:

Bytes/sec

Panel: Network Packets per Second

Panel title:

Network Packets

Queries:

alias(perSecond(telegraf.linux-demo.net.packets_recv), 'Packets Received/sec')
alias(perSecond(telegraf.linux-demo.net.packets_sent), 'Packets Sent/sec')
Code language: JavaScript (javascript)

Visualization:

Time series

Unit:

Packets/sec

Panel: Network Errors

Panel title:

Network Errors

Queries:

alias(telegraf.linux-demo.net.err_in, 'Input Errors')
alias(telegraf.linux-demo.net.err_out, 'Output Errors')
Code language: JavaScript (javascript)

Visualization:

Time series

Unit:

None

Explanation:

Network errors should normally remain zero.
If errors increase, there may be a network, driver, or interface issue.
Code language: PHP (php)

Panel: Network Drops

Panel title:

Network Drops

Queries:

alias(telegraf.linux-demo.net.drop_in, 'Input Drops')
alias(telegraf.linux-demo.net.drop_out, 'Output Drops')
Code language: JavaScript (javascript)

Visualization:

Time series

Unit:

None

Part 16: Swap Monitoring Row

Panel: Swap Used %

Panel title:

Swap Used %

Query:

telegraf.linux-demo.swap.used_percent
Code language: CSS (css)

Visualization:

Gauge

Unit:

Percent (0-100)

Thresholds:

Green: 0
Yellow: 20
Red: 50
Code language: HTTP (http)

Panel: Swap Used and Free

Panel title:

Swap Used and Free

Queries:

alias(telegraf.linux-demo.swap.used, 'Swap Used')
alias(telegraf.linux-demo.swap.free, 'Swap Free')
alias(telegraf.linux-demo.swap.total, 'Swap Total')
Code language: JavaScript (javascript)

Visualization:

Time series

Unit:

Bytes

Panel: Swap In and Out

Panel title:

Swap In/Out

Queries:

alias(telegraf.linux-demo.swap.in, 'Swap In')
alias(telegraf.linux-demo.swap.out, 'Swap Out')
Code language: JavaScript (javascript)

Visualization:

Time series

Unit:

Bytes

Part 17: Process Monitoring Row

Panel: Process States

Panel title:

Process States

Queries:

alias(telegraf.linux-demo.processes.running, 'Running')
alias(telegraf.linux-demo.processes.sleeping, 'Sleeping')
alias(telegraf.linux-demo.processes.blocked, 'Blocked')
alias(telegraf.linux-demo.processes.zombies, 'Zombies')
Code language: JavaScript (javascript)

Visualization:

Time series

Unit:

Processes

Panel: Total Processes and Threads

Panel title:

Total Processes and Threads

Queries:

alias(telegraf.linux-demo.processes.total, 'Total Processes')
alias(telegraf.linux-demo.processes.total_threads, 'Total Threads')
Code language: JavaScript (javascript)

Visualization:

Time series

Unit:

None

Part 18: Kernel Monitoring Row

Panel: Kernel Activity

Panel title:

Kernel Activity

Queries:

alias(perSecond(telegraf.linux-demo.kernel.context_switches), 'Context Switches/sec')
alias(perSecond(telegraf.linux-demo.kernel.interrupts), 'Interrupts/sec')
alias(perSecond(telegraf.linux-demo.kernel.processes_forked), 'Processes Forked/sec')
Code language: JavaScript (javascript)

Visualization:

Time series

Unit:

Ops/sec

Panel: Entropy Available

Panel title:

Kernel Entropy Available

Query:

telegraf.linux-demo.kernel.entropy_avail
Code language: CSS (css)

Visualization:

Time series

Unit:

None

Explanation:

Entropy is used by Linux for randomness.
Very low entropy can affect cryptographic operations.

Part 19: Save Dashboard

Click:

Save dashboard

Dashboard name:

Linux Server Monitoring - Graphite Telegraf

Add description:

Student lab dashboard using Graphite metrics collected by Telegraf.

Click:

Save

Part 20: Create Grafana Alert Rules

Grafana-managed alert rules can query data sources, reduce or transform query results, and compare values against thresholds. (Grafana Labs)

From the left menu:

Alerting → Alert rules

Click:

New alert rule
Code language: PHP (php)

Use the same pattern for each alert:

Query A  → Graphite metric
Reduce B → Last or Mean
Condition C → Threshold

Alert 1: High CPU Usage

Alert name:

High CPU Usage

Query A:

telegraf.linux-demo.cpu.usage_active
Code language: CSS (css)

Reduce:

Last

Condition:

IS ABOVE 90

Evaluation:

Every 1 minute
For 5 minutes

Meaning:

Alert if CPU active usage stays above 90% for 5 minutes.

Alert 2: High Memory Usage

Alert name:

High Memory Usage

Query A:

telegraf.linux-demo.mem.used_percent
Code language: CSS (css)

Reduce:

Last

Condition:

IS ABOVE 90

Evaluation:

Every 1 minute
For 5 minutes

Alert 3: High Disk Usage

Alert name:

High Disk Usage

Query A:

telegraf.linux-demo.disk.used_percent
Code language: CSS (css)

Reduce:

Last

Condition:

IS ABOVE 90

Evaluation:

Every 1 minute
For 5 minutes

Alert 4: High Disk Inode Usage

Alert name:

High Disk Inode Usage

Query A:

telegraf.linux-demo.disk.inodes_used_percent
Code language: CSS (css)

Reduce:

Last

Condition:

IS ABOVE 90

Evaluation:

Every 1 minute
For 5 minutes

Alert 5: High Swap Usage

Alert name:

High Swap Usage

Query A:

telegraf.linux-demo.swap.used_percent
Code language: CSS (css)

Reduce:

Last

Condition:

IS ABOVE 50

Evaluation:

Every 1 minute
For 5 minutes

Explanation:

Swap usage should normally be low.
High swap usage may indicate memory pressure.

Alert 6: High System Load

Alert name:

High System Load

Query A:

telegraf.linux-demo.system.load1
Code language: CSS (css)

Reduce:

Last

Condition:

IS ABOVE 2

Evaluation:

Every 1 minute
For 5 minutes

Note for students:

For a small lab VM, load above 2 can be considered high.
In production, compare load with number of CPU cores.
Code language: JavaScript (javascript)

Alert 7: Zombie Processes Detected

Alert name:

Zombie Processes Detected

Query A:

telegraf.linux-demo.processes.zombies
Code language: CSS (css)

Reduce:

Last

Condition:

IS ABOVE 0

Evaluation:

Every 1 minute
For 2 minutes

Explanation:

Zombie processes are processes that have finished but still remain in the process table.

Alert 8: Blocked Processes Detected

Alert name:

Blocked Processes Detected

Query A:

telegraf.linux-demo.processes.blocked
Code language: CSS (css)

Reduce:

Last

Condition:

IS ABOVE 0

Evaluation:

Every 1 minute
For 2 minutes

Alert 9: Network Input Errors

Alert name:

Network Input Errors

Query A:

telegraf.linux-demo.net.err_in
Code language: CSS (css)

Reduce:

Last

Condition:

IS ABOVE 0

Evaluation:

Every 1 minute
For 2 minutes

Alert 10: Network Output Errors

Alert name:

Network Output Errors

Query A:

telegraf.linux-demo.net.err_out
Code language: CSS (css)

Reduce:

Last

Condition:

IS ABOVE 0

Evaluation:

Every 1 minute
For 2 minutes

Alert 11: Disk I/O Utilization High

Alert name:

Disk I/O Utilization High

Query A:

telegraf.linux-demo.diskio.io_util
Code language: CSS (css)

Reduce:

Last

Condition:

IS ABOVE 80

Evaluation:

Every 1 minute
For 5 minutes

Part 21: Recommended Alert Settings for Lab

For each alert rule, use:

Folder:
Linux Monitoring Lab

Evaluation group:
linux-telegraf-alerts

Evaluate every:
1m

Pending period:
5m for resource alerts
2m for error/process alerts

No data behavior:

No Data → No Data
ErrorError
Code language: JavaScript (javascript)

For beginner labs, explain:

No Data means Grafana did not receive data for the query.
Error means the query or data source failed.

Part 22: Testing Alerts Safely

For a classroom lab, students may not naturally reach 90% CPU or memory.

So for testing only, temporarily change thresholds.

Example:

CPU alert production threshold:
CPU > 90

CPU alert test threshold:
CPU > 1

Then wait for the alert to fire.

After testing, change it back to:

CPU > 90

For disk and memory alerts, do not ask beginners to fill disk or memory. Instead, test by temporarily lowering the threshold.


Part 23: Troubleshooting

Problem 1: Graphite Data Source Test Fails

Check Graphite container:

docker ps

Check Graphite API:

curl "http://localhost:8080/metrics/find?query=telegraf.*"
Code language: JavaScript (javascript)

If Grafana cannot connect using:

http://localhost:8080
Code language: JavaScript (javascript)

Try:

http://<server-public-ip>:8080
Code language: HTML, XML (xml)

Problem 2: Query Shows No Data

Check whether metric exists:

curl "http://localhost:8080/metrics/find?query=telegraf.linux-demo.cpu.*"
Code language: JavaScript (javascript)

Try this known working metric:

telegraf.linux-demo.cpu.usage_active
Code language: CSS (css)

Also check time range in Grafana:

Last 5 minutes
Last 15 minutes
Last 1 hour

Problem 3: Student Used .wsp in Grafana Query

Wrong:

telegraf.linux-demo.cpu.usage_active.wsp
Code language: CSS (css)

Correct:

telegraf.linux-demo.cpu.usage_active
Code language: CSS (css)

Explain:

.wsp is the storage file extension.
Grafana queries the metric name, not the file name.
Code language: CSS (css)

Problem 4: Student Uses servers.*

Wrong:

servers.*

Correct:

telegraf.linux-demo.*
Code language: CSS (css)

Reason:

Your Graphite server has no metrics under servers.*.
The actual metrics are stored under telegraf.linux-demo.*.
Code language: CSS (css)

Part 24: Student Exercise

Ask students to complete these tasks:

Exercise 1: Explore Metrics

Use Grafana Explore and run:

telegraf.linux-demo.cpu.usage_active
telegraf.linux-demo.mem.used_percent
telegraf.linux-demo.disk.used_percent
Code language: CSS (css)

Question:

Which metric shows CPU usage?
Which metric shows memory usage?
Which metric shows disk usage?

Exercise 2: Create Three Stat Panels

Create stat panels for:

CPU Active %
Memory Used %
Disk Used %

Exercise 3: Create One Time Series Panel

Create a CPU breakdown panel using:

telegraf.linux-demo.cpu.usage_user
telegraf.linux-demo.cpu.usage_system
telegraf.linux-demo.cpu.usage_iowait
telegraf.linux-demo.cpu.usage_idle
Code language: CSS (css)

Exercise 4: Create One Alert

Create alert:

High Memory Usage

Metric:

telegraf.linux-demo.mem.used_percent
Code language: CSS (css)

Condition:

Above 90

For testing, temporarily change:

Above 1

Then restore:

Above 90

Part 25: Complete Captured Metric Inventory

These are the actual metric groups to use in this lab.

CPU Metrics

telegraf.linux-demo.cpu.usage_active
telegraf.linux-demo.cpu.usage_guest
telegraf.linux-demo.cpu.usage_guest_nice
telegraf.linux-demo.cpu.usage_idle
telegraf.linux-demo.cpu.usage_iowait
telegraf.linux-demo.cpu.usage_irq
telegraf.linux-demo.cpu.usage_nice
telegraf.linux-demo.cpu.usage_softirq
telegraf.linux-demo.cpu.usage_steal
telegraf.linux-demo.cpu.usage_system
telegraf.linux-demo.cpu.usage_user
Code language: CSS (css)

Memory Metrics

telegraf.linux-demo.mem.active
telegraf.linux-demo.mem.available
telegraf.linux-demo.mem.available_percent
telegraf.linux-demo.mem.buffered
telegraf.linux-demo.mem.cached
telegraf.linux-demo.mem.commit_limit
telegraf.linux-demo.mem.committed_as
telegraf.linux-demo.mem.dirty
telegraf.linux-demo.mem.free
telegraf.linux-demo.mem.high_free
telegraf.linux-demo.mem.high_total
telegraf.linux-demo.mem.huge_page_size
telegraf.linux-demo.mem.huge_pages_free
telegraf.linux-demo.mem.huge_pages_total
telegraf.linux-demo.mem.inactive
telegraf.linux-demo.mem.low_free
telegraf.linux-demo.mem.low_total
telegraf.linux-demo.mem.mapped
telegraf.linux-demo.mem.page_tables
telegraf.linux-demo.mem.shared
telegraf.linux-demo.mem.slab
telegraf.linux-demo.mem.sreclaimable
telegraf.linux-demo.mem.sunreclaim
telegraf.linux-demo.mem.swap_cached
telegraf.linux-demo.mem.swap_free
telegraf.linux-demo.mem.swap_total
telegraf.linux-demo.mem.total
telegraf.linux-demo.mem.used
telegraf.linux-demo.mem.used_percent
telegraf.linux-demo.mem.vmalloc_chunk
telegraf.linux-demo.mem.vmalloc_total
telegraf.linux-demo.mem.vmalloc_used
telegraf.linux-demo.mem.write_back
telegraf.linux-demo.mem.write_back_tmp
Code language: CSS (css)

Disk Metrics

telegraf.linux-demo.disk.free
telegraf.linux-demo.disk.inodes_free
telegraf.linux-demo.disk.inodes_total
telegraf.linux-demo.disk.inodes_used
telegraf.linux-demo.disk.inodes_used_percent
telegraf.linux-demo.disk.total
telegraf.linux-demo.disk.used
telegraf.linux-demo.disk.used_percent
Code language: CSS (css)

Disk I/O Metrics

telegraf.linux-demo.diskio.io_await
telegraf.linux-demo.diskio.io_svctm
telegraf.linux-demo.diskio.io_time
telegraf.linux-demo.diskio.io_util
telegraf.linux-demo.diskio.iops_in_progress
telegraf.linux-demo.diskio.merged_reads
telegraf.linux-demo.diskio.merged_writes
telegraf.linux-demo.diskio.read_bytes
telegraf.linux-demo.diskio.read_time
telegraf.linux-demo.diskio.reads
telegraf.linux-demo.diskio.weighted_io_time
telegraf.linux-demo.diskio.write_bytes
telegraf.linux-demo.diskio.write_time
telegraf.linux-demo.diskio.writes
Code language: CSS (css)

Network Metrics

telegraf.linux-demo.net.bytes_recv
telegraf.linux-demo.net.bytes_sent
telegraf.linux-demo.net.drop_in
telegraf.linux-demo.net.drop_out
telegraf.linux-demo.net.err_in
telegraf.linux-demo.net.err_out
telegraf.linux-demo.net.packets_recv
telegraf.linux-demo.net.packets_sent
telegraf.linux-demo.net.speed
Code language: CSS (css)

Process Metrics

telegraf.linux-demo.processes.blocked
telegraf.linux-demo.processes.dead
telegraf.linux-demo.processes.idle
telegraf.linux-demo.processes.paging
telegraf.linux-demo.processes.running
telegraf.linux-demo.processes.sleeping
telegraf.linux-demo.processes.stopped
telegraf.linux-demo.processes.total
telegraf.linux-demo.processes.total_threads
telegraf.linux-demo.processes.unknown
telegraf.linux-demo.processes.zombies
Code language: CSS (css)

Swap Metrics

telegraf.linux-demo.swap.free
telegraf.linux-demo.swap.in
telegraf.linux-demo.swap.out
telegraf.linux-demo.swap.total
telegraf.linux-demo.swap.used
telegraf.linux-demo.swap.used_percent
Code language: CSS (css)

System Metrics

telegraf.linux-demo.system.load1
telegraf.linux-demo.system.load15
telegraf.linux-demo.system.load5
telegraf.linux-demo.system.n_cpus
telegraf.linux-demo.system.n_physical_cpus
telegraf.linux-demo.system.uptime
Code language: CSS (css)

Kernel Metrics

telegraf.linux-demo.kernel.boot_time
telegraf.linux-demo.kernel.context_switches
telegraf.linux-demo.kernel.entropy_avail
telegraf.linux-demo.kernel.interrupts
telegraf.linux-demo.kernel.processes_forked
Code language: CSS (css)

Final Student Summary

By completing this lab, students learned how to:

1. Verify Graphite and Telegraf containers
2. Check stored Graphite metrics
3. Understand .wsp files versus Grafana metric queries
4. Add Graphite as a Grafana 13 data source
5. Explore Graphite metrics in Grafana
6. Build a Linux monitoring dashboard
7. Create CPU, memory, disk, disk I/O, network, swap, process, system, and kernel panels
8. Create beginner-friendly Grafana alert rules
9. Troubleshoot common Graphite and Grafana query issues
Code language: JavaScript (javascript)

Find Trusted Cardiac Hospitals

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

Explore Hospitals
Subscribe
Notify of
guest
0 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments

Certification Courses

DevOpsSchool has introduced a series of professional certification courses designed to enhance your skills and expertise in cutting-edge technologies and methodologies. Whether you are aiming to excel in development, security, or operations, these certifications provide a comprehensive learning experience. Explore the following programs:

DevOps Certification, SRE Certification, and DevSecOps Certification by DevOpsSchool

Explore our DevOps Certification, SRE Certification, and DevSecOps Certification programs at DevOpsSchool. Gain the expertise needed to excel in your career with hands-on training and globally recognized certifications.

0
Would love your thoughts, please comment.x
()
x