Linux Monitoring platform Build-cpu

Source: Internet
Author: User
Tags epoch time switches cpu usage

Currently the main CPU of the server is Intel or AMD. What the frequency is. Multicore, multi-threading, concurrency, parallel, overclocking, primary cache, level two cache, level three cache. i386, x86


CPU: contains arithmetic logic, control, memory and other units

Frequency: is the number of times the CPU can work per second. 3.0GHz This CPU is 3.0*10 within one second (9)

FSB: CPU and external components for data transmission, operation is the speed. It is best to match the memory.

total number of cores = number of physical CPUs X number of cores per physical CPU

total number of logical CPUs = Number of physical CPUs × number of cores per physical CPU X number of hyper-threads

To view the number of physical CPUs: cat/proc/cpuinfo| grep "Physical id" | sort| uniq| wc-l

look at the number of cores in each physical CPU (that is, the number of nuclei): cat/proc/cpuinfo| grep "CPU Cores" | Uniq

to view the number of logical CPUs: cat/proc/cpuinfo| grep "Processor" | Wc-l

To View CPU information (model number): cat/proc/cpuinfo | grep name | cut-f2-d: | uniq-c

To view the CPU's main frequency: Cat/proc/cpuinfo |grep Mhz|uniq


1. Monitor the relevant CPU calculation methods : By collecting/proc/stat, you can refer to the statistical output of SAR commands to understand.


The percentage of time that Cpu.idle:CPU or CPUs is idle and the system does not have outstanding disk I/O requests.

Cpu.busy: As opposed to Cpu.idle, his value equals 100 minus cpu.idle.

The percentage of time Cpu.guest:CPU or CPUs is used to run the virtual processor.

The percentage of time spent by Cpu.iowait:CPU or CPUs to maintain hardware interrupts.

The percentage of time spent by Cpu.irq:CPU or CPUs to maintain hardware interrupts.

The percentage of time spent by Cpu.softirq:CPU or CPUs to service software outages.

Cpu.nice: The percentage of CPU utilization that is performed at a high-priority user level.

Cpu.steal: The percentage of time that a virtual CPU or CPUs spends in an involuntary wait while the hypervisor is serving another virtual processor.

Cpu.system: The percentage of CPU utilization that is performed at the system level (kernel).

Cpu.user: Percentage of CPU usage at User level (application) execution.

CPU.CNT:CPU number of cores.

Cpu.switches:cpu the number of context switches, counter type. In stat, it's this ctxt 30516916343.

CPU Time =USER+SYSTEM+NICE+IDLE+IOWAIT+IRQ+SOFTIRQ

Example: View CPU core 0  

%USR%nice%sys%iowait%irq%soft%steal%guest%idle

Cpu0 3143580 88 2678777 3863810314 2442 0 5461 0 0


Btime: This line shows the time from the start of the system up to now (in epoch time, 1970-01-01 00:00:00 +0000 (UTC)), in seconds.

Processes: (Total_forks) The number of tasks created since the system started.

Procs_running: The number of tasks currently running the queue.

Procs_blocked: The number of tasks that are currently blocked.

SOFTIRQ: Accumulated from the start of the system to the current moment, soft interrupt time (unit: jiffies)

650) this.width=650; "src=" http://10.110.122.210/aa.jpg "width=" 425 "height=" "The" alt= "Aa.jpg"/> "

Intr: This line gives the interrupt information, the first is the number of interrupts that have occurred since the system started, and then each number corresponds to the number of times that a particular interrupt has occurred since the system started.


2. Monitoring the relevant Cpu-load calculation method : Read/proc/loadavg, which are primitive value types:

Load.1min: Represents the average load for the last 1 minutes (depending on the number of cores of the machine)

Load.5min: Indicates the average negative of the last 5 minutes (depending on the number of cores of the machine)

Load.15min: Represents the average load for the last 15 minutes (depending on the number of cores of the machine)

Common commands: SAR, Mpstat, Top, Iostat, Vmstat, W ...

Mpstat [-p {cpu| All}] [internal [count]]


3. How to get process cmd :

Ps-e o User,pid,cmd | grep ssh

PS W-p $pid


4. Calculate when the process started :

Ps-p $pid-O lstart

or script

#!/bin/bash

Pid=$1

elt=$ (PS w-p $pid o pid=,cmd=,etime= | awk ' {print $NF} ')

Case $ (echo $elt | sed-e ' s/:/:\n/g ' | grep ":"-c) in

"1")

elt=$ (echo $elt | sed-e ' s/:/minutes ago/')

;;

*)

elt=$ (echo $elt | sed-e ' s/-/days ago/'-E ' s/:/hours ago/'-e ' s/:/minutes ago/')

;;

Esac

date-d "$elt seconds Ago"

4. View the status of a single process :

cat/proc/$pid/stat

This article from "Asinego" blog, declined reprint!

Linux Monitoring platform Build-cpu

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.