0.0.5 • Published 9 years ago
micromonitor v0.0.5
micromonitor
micromonitor is a fast linux command line tool that outputs a number of metrics from your OS in plain text or json format.
How to use
TODO
Metrics
- Info
- Version
- Collect date
- Execution time
- uname report
Metric count (TODO)
System
- Uptime
Idle time
CPU
- Load: 1 min, 5 min, 15 min
- Tasks: total, running, sleeping, stopped, zombie
State: user, system, nice, idle, IO wait, hardware interrupts, software interrupts, steal
Memory
- Physical: total, used, free, shared, buffers, cached
Swap: total, used, free
Partitions
- Device, mount point, type
- Space: total, used, free
Inodes: total, used, free
Network (TODO)
- hostname
- inet/inet6 addr
- RX: bytes, packets, errors, dropped, overrun, mcast
TX: bytes, packets, errors, dropped, carrier, collsns
Processes (TODO)
- TODO
Commands
List of commands used. Your OS must support these tools in order to micromonitor to work.
Info:
uname -a
System:
cat /proc/uptime
CPU:
top -bn 1 | head -n 3
Memory:
free -b
Partitions:
df -T -x tmpfs -x rootfs -x devtmpfs --block-size=1
df -i
cat /proc/sys/fs/file-nr (TODO)
Network:
hostname
ip -s link
ip -s addr (TOOO) (inet/inet6)
Process:
TODO ps -eo pcpu,pid,user,args | sort -k 1 -r | head -10
Output
Output example in plain text.
Version 0.0.5
Collect date 2015-02-28T00:24:32.000Z
Execution time 753
uname Linux raspberrypi 3.12.32+ #721 PREEMPT Fri Nov 7 16:50:31 GMT 2014 armv6l GNU/Linux
Uptime 7h 39m 40s
Idle time 6h 56m 2s
CPU 1min load 0.32
CPU 5min load 0.28
CPU 15min load 0.36
Total tasks 73
Running tasks 2
Sleeping tasks 71
Stopped tasks 0
Zombie tasks 0
CPU % user 4.59 %
CPU % system 1.7 %
CPU % nice 0 %
CPU % idle 90.5 %
CPU % IO wait 3.1 %
CPU % hardware interrupts 0 %
CPU % software interrupts 0.2 %
CPU % steal 0 %
Total physical memory 484 MiB
Used physical memory 471 MiB (97.26 %)
Free physical memory 13 MiB (2.73 %)
Shared physical memory 0 B (0 %)
Buffers physical memory 51 MiB (10.57 %)
Cached physical memory 342 MiB (70.71 %)
Total swap 99 MiB
Used swap 0 B (0 %)
Free swap 99 MiB (100 %)
/ total 14909 MiB
/ used 3090 MiB (20.72 %)
/ free 11169 MiB (74.91 %)
/ inodes total 957712
/ inodes used 93557 (9.76 %)
/ inodes free 864155 (90.23 %)
/media/MyBook2 total 1877634 MiB
/media/MyBook2 used 103848 MiB (5.53 %)
/media/MyBook2 free 1678385 MiB (89.38 %)
/media/MyBook2 inodes total 122093568
/media/MyBook2 inodes used 1235 (0 %)
/media/MyBook2 inodes free 122092333 (99.99 %)
/boot total 55 MiB
/boot used 14 MiB (25.7 %)
/boot free 41 MiB (74.29 %)
/boot inodes total 0
/boot inodes used 0
/boot inodes free 0
Hostname raspberrypi
lo receive bytes 6 KiB
lo receive packets 114
lo receive errors 0
lo receive dropped 0
lo receive overrun 0
lo receive multicast 0
lo transmit bytes 6 KiB
lo transmit packets 114
lo transmit errors 0
lo transmit dropped 0
lo transmit carrier 0
lo transmit collisions 0
eth0 receive bytes 186 MiB
eth0 receive packets 351131
eth0 receive errors 0
eth0 receive dropped 0
eth0 receive overrun 0
eth0 receive multicast 0
eth0 transmit bytes 262 MiB
eth0 transmit packets 402326
eth0 transmit errors 0
eth0 transmit dropped 0
eth0 transmit carrier 0
eth0 transmit collisions 0
Output example in json format.
{
"info": {
"version": {
"name": "Version",
"raw": "0.0.5"
},
"collect_date": {
"name": "Collect date",
"raw": 1425083072,
"display": "2015-02-28T00:24:32.000Z"
},
"exec_time": {
"name": "Execution time",
"raw": 753
},
"uname": {
"name": "uname",
"raw": "Linux raspberrypi 3.12.32+ #721 PREEMPT Fri Nov 7 16:50:31 GMT 2014 armv6l GNU/Linux"
}
},
"system": {
"uptime": {
"name": "Uptime",
"raw": 27580,
"display": "7h 39m 40s"
},
"idle": {
"name": "Idle time",
"raw": 24962,
"display": "6h 56m 2s"
}
},
"cpu": {
"load": {
"1min": {
"name": "CPU 1min load",
"raw": 0.32,
"display": "0.32"
},
"5min": {
"name": "CPU 5min load",
"raw": 0.28,
"display": "0.28"
},
"15min": {
"name": "CPU 15min load",
"raw": 0.36,
"display": "0.36"
}
},
"tasks": {
"total": {
"name": "Total tasks",
"raw": 73,
"display": "73"
},
"running": {
"name": "Running tasks",
"raw": 2,
"display": "2"
},
"sleeping": {
"name": "Sleeping tasks",
"raw": 71,
"display": "71"
},
"stopped": {
"name": "Stopped tasks",
"raw": 0,
"display": "0"
},
"zombie": {
"name": "Zombie tasks",
"raw": 0,
"display": "0"
}
},
"state": {
"user": {
"name": "CPU % user",
"raw": 4.6,
"display": "4.59 %"
},
"system": {
"name": "CPU % system",
"raw": 1.7,
"display": "1.7 %"
},
"nice": {
"name": "CPU % nice",
"raw": 0,
"display": "0 %"
},
"idle": {
"name": "CPU % idle",
"raw": 90.5,
"display": "90.5 %"
},
"io_wait": {
"name": "CPU % IO wait",
"raw": 3.1,
"display": "3.1 %"
},
"hardware_interrupts": {
"name": "CPU % hardware interrupts",
"raw": 0,
"display": "0 %"
},
"software_interrupts": {
"name": "CPU % software interrupts",
"raw": 0.2,
"display": "0.2 %"
},
"steal": {
"name": "CPU % steal",
"raw": 0,
"display": "0 %"
}
},
"memory": {
"physical": {
"total": {
"name": "Total physical memory",
"raw": 508518400,
"display": "484 MiB"
},
"used": {
"name": "Used physical memory",
"raw": 494587904,
"display": "471 MiB",
"percentage": "97.26 %"
},
"free": {
"name": "Free physical memory",
"raw": 13930496,
"display": "13 MiB",
"percentage": "2.73 %"
},
"shared": {
"name": "Shared physical memory",
"raw": 0,
"display": "0 B",
"percentage": "0 %"
},
"buffers": {
"name": "Buffers physical memory",
"raw": 53800960,
"display": "51 MiB",
"percentage": "10.57 %"
},
"cached": {
"name": "Cached physical memory",
"raw": 359620608,
"display": "342 MiB",
"percentage": "70.71 %"
}
},
"swap": {
"total": {
"name": "Total swap",
"raw": 104853504,
"display": "99 MiB"
},
"used": {
"name": "Used swap",
"raw": 0,
"display": "0 B",
"percentage": "0 %"
},
"free": {
"name": "Free swap",
"raw": 104853504,
"display": "99 MiB",
"percentage": "100 %"
}
}
}
},
"partition": {
"/": {
"total": {
"name": "/ total",
"raw": 15633403904,
"display": "14909 MiB"
},
"used": {
"name": "/ used",
"raw": 3240251392,
"display": "3090 MiB",
"percentage": "20.72 %"
},
"free": {
"name": "/ free",
"raw": 11711664128,
"display": "11169 MiB",
"percentage": "74.91 %"
},
"inodes_total": {
"name": "/ inodes total",
"raw": 957712
},
"inodes_used": {
"name": "/ inodes used",
"raw": 93557,
"percentage": "9.76 %"
},
"inodes_free": {
"name": "/ inodes free",
"raw": 864155,
"percentage": "90.23 %"
}
},
"/media/MyBook2": {
"total": {
"name": "/media/MyBook2 total",
"raw": 1968842792960,
"display": "1877634 MiB"
},
"used": {
"name": "/media/MyBook2 used",
"raw": 108893212672,
"display": "103848 MiB",
"percentage": "5.53 %"
},
"free": {
"name": "/media/MyBook2 free",
"raw": 1759914594304,
"display": "1678385 MiB",
"percentage": "89.38 %"
},
"inodes_total": {
"name": "/media/MyBook2 inodes total",
"raw": 122093568
},
"inodes_used": {
"name": "/media/MyBook2 inodes used",
"raw": 1235,
"percentage": "0 %"
},
"inodes_free": {
"name": "/media/MyBook2 inodes free",
"raw": 122092333,
"percentage": "99.99 %"
}
},
"/boot": {
"total": {
"name": "/boot total",
"raw": 58662912,
"display": "55 MiB"
},
"used": {
"name": "/boot used",
"raw": 15081472,
"display": "14 MiB",
"percentage": "25.7 %"
},
"free": {
"name": "/boot free",
"raw": 43581440,
"display": "41 MiB",
"percentage": "74.29 %"
},
"inodes_total": {
"name": "/boot inodes total",
"raw": 0
},
"inodes_used": {
"name": "/boot inodes used",
"raw": 0
},
"inodes_free": {
"name": "/boot inodes free",
"raw": 0
}
}
},
"network": {
"hostname": {
"name": "Hostname",
"raw": "raspberrypi"
},
"interfaces": {
"lo": {
"rx_bytes": {
"name": "lo receive bytes",
"raw": 6404,
"display": "6 KiB"
},
"rx_packets": {
"name": "lo receive packets",
"raw": 114
},
"rx_errors": {
"name": "lo receive errors",
"raw": 0
},
"rx_dropped": {
"name": "lo receive dropped",
"raw": 0
},
"rx_overrun": {
"name": "lo receive overrun",
"raw": 0
},
"rx_mcast": {
"name": "lo receive multicast",
"raw": 0
},
"tx_bytes": {
"name": "lo transmit bytes",
"raw": 6404,
"display": "6 KiB"
},
"tx_packets": {
"name": "lo transmit packets",
"raw": 114
},
"tx_errors": {
"name": "lo transmit errors",
"raw": 0
},
"tx_dropped": {
"name": "lo transmit dropped",
"raw": 0
},
"tx_carrier": {
"name": "lo transmit carrier",
"raw": 0
},
"tx_collsns": {
"name": "lo transmit collisions",
"raw": 0
}
},
"eth0": {
"rx_bytes": {
"name": "eth0 receive bytes",
"raw": 195076045,
"display": "186 MiB"
},
"rx_packets": {
"name": "eth0 receive packets",
"raw": 351131
},
"rx_errors": {
"name": "eth0 receive errors",
"raw": 0
},
"rx_dropped": {
"name": "eth0 receive dropped",
"raw": 0
},
"rx_overrun": {
"name": "eth0 receive overrun",
"raw": 0
},
"rx_mcast": {
"name": "eth0 receive multicast",
"raw": 0
},
"tx_bytes": {
"name": "eth0 transmit bytes",
"raw": 275446642,
"display": "262 MiB"
},
"tx_packets": {
"name": "eth0 transmit packets",
"raw": 402326
},
"tx_errors": {
"name": "eth0 transmit errors",
"raw": 0
},
"tx_dropped": {
"name": "eth0 transmit dropped",
"raw": 0
},
"tx_carrier": {
"name": "eth0 transmit carrier",
"raw": 0
},
"tx_collsns": {
"name": "eth0 transmit collisions",
"raw": 0
}
}
}
}
}