Sponsored Content
Operating Systems Solaris Monitoring the output of 'top' command on hourly basis. Post 302345535 by subharai on Wednesday 19th of August 2009 01:36:31 PM
Old 08-19-2009
Monitoring the output of 'top' command on hourly basis.

I need to capture the following data on an hourly basis through cronjob scheduling:-

1. load averages
2. Total no. of processes.
3. CPU state
4. Memory
5. Top 3 process details.

All the above information is available through the command 'top'. But here we need to automate the same and save it in a log file for the purpose of monitoring the server performance.

Please find the below data which exactly I need to capture:-

Code:
 
load averages:  0.30,  0.29,  0.24                                          
90 processes:  88 sleeping, 2 on cpu
CPU states: 97.7% idle,  1.7% user,  0.6% kernel,  0.0% iowait,  0.0% swap
Memory: 16G real, 11G free, 3333M swap in use, 13G swap free
   PID USERNAME LWP PRI NICE  SIZE   RES STATE    TIME    CPU COMMAND
 29490 oms1      47   0   12  172M  140M cpu/0   55:40  0.75% java
  2436 sroy       1  59    0 7208K 6088K cpu/8    0:54  0.52% top
  2482 avijay     1  32    0 7080K 5960K sleep    0:01  0.26% top

Request you to please provide some idea or any automation script how the above activity can be performed.

Thank you all in advance.

---------- Post updated at 11:06 PM ---------- Previous update was at 10:54 PM ----------

Sorry for not mentioning, the requirement is for Solaris 10 environment.
 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Grabbing value from command output and monitoring for changes

Hi all, Very new to shell scripting so appreciate some help! There is a process count that I need to monitor, I have the AIX command that gives this value and I've cleaned it up with grep/awk so it only spits out the value I'm interested in: echo "psc -i 10050 -s RELOAD_SERVICE" | tmadmin... (14 Replies)
Discussion started by: monty77
14 Replies

2. Shell Programming and Scripting

how to grep string from hourly basis files

dear all, pls help on this script.. i have many files which will be created every mins in particular directory. i want to grep a particular string from only for unique hour files. from the below code i want to grep a string from only 9th hour files . Ex files: -rw-r--r-- 1 root ... (5 Replies)
Discussion started by: steve2216
5 Replies

3. HP-UX

Sorting top command output in HP_UX 11.11

Hello all, I've been woking on Solaris and Linux (Red Hat) so far but now I've inherited an HP-UX system and having minor issues with syntax...Appreciate if you could help me out here.. 1) I'm trying to sort the output of the top command in HP-UX 11.11 by pressing O (capital O) after typing... (2 Replies)
Discussion started by: luft
2 Replies

4. Shell Programming and Scripting

FTP a file on Hourly basis

Hi, I have to upload a file test_201105281100.txt to a ftp location. The files will be created on hourly basis like test_201105281100.txt, test_201105281200.txt & so on. After a file is uploaded successfully, I need to rename the file as test_201105281100.success & if it is not uploaded... (11 Replies)
Discussion started by: SunilB2011
11 Replies

5. Shell Programming and Scripting

Capturing first output from 'top'-likes command

Is this a stupid code?? top > top.out & sleep 2 kill %1 cat top.out Thanks, (6 Replies)
Discussion started by: Shawn, Lee
6 Replies

6. UNIX for Advanced & Expert Users

Conflicts in the output of TOP command

Hi All, In the output of TOP command in my unix system, i monitored that some process has utilization more than 100% even some process has 4000% utilisation. Please help me understand how it is possible to show more than 100% utilization. Please see the screenshot below:... (2 Replies)
Discussion started by: anand2308
2 Replies

7. Shell Programming and Scripting

Crontab on hourly basis

Hi.. I need to run the script on hourly basis. How do I write the crontab on hourly basis i.e, 9:00, 10:00.....22:00.. 23:00 hours Please let me know if the below is correct one for crontab on hourly basis. 00 * * * * ksh myscript.ksh > /dev/null Regards, John (3 Replies)
Discussion started by: scriptscript
3 Replies

8. Shell Programming and Scripting

Calculate avg response time on hourly basis

Hi, I am trying to calculate avg response time on hourly basis from the log file which has millions of records. As of now I am trying with creating temp file which will have lines with unique id and start time and end time and after that another script will run on this temp file to... (7 Replies)
Discussion started by: random_thoughts
7 Replies

9. UNIX for Dummies Questions & Answers

Top Command Output is not coming via Cronjob

Dear All, I created a small script to get the CPU, GIS usage etc automatically. However when i run this script manually its working , but when i run through cronjob i am not getting any output. Can anyone please help me on this. I am using SuseLinux. Thank you in advance. #!/bin/sh {... (2 Replies)
Discussion started by: Nitin Kapoor
2 Replies
prstat(1M)                                                                                                                              prstat(1M)

NAME
prstat - report active process statistics SYNOPSIS
prstat [-acJLmRtTv] [-C psrsetlist] [-j projlist] [-k tasklist] [-n ntop[,nbottom]] [-p pidlist] [-P cpulist] [-s key | -S key ] [-u euidlist] [-U uidlist] [-z zoneidlist] [-Z] [interval [count]] The prstat utility iteratively examines all active processes on the system and reports statistics based on the selected output mode and sort order. prstat provides options to examine only processes matching specified PIDs, UIDs, zone IDs, CPU IDs, and processor set IDs. The -j, -k, -C, -p, -P, -u, -U, and -z options accept lists as arguments. Items in a list can be either separated by commas or enclosed in quotes and separated by commas or spaces. If you do not specify an option, prstat examines all processes and reports statistics sorted by CPU usage. The following options are supported: -a Report information about processes and users. In this mode prstat displays separate reports about processes and users at the same time. -c Print new reports below previous reports instead of overprinting them. -C psrsetlist Report only processes or lwps that are bound to processor sets in the given list. Each processor set is identified by an integer as reported by psrset(1M). The load averages displayed are the sum of the load averages of the specified processor sets (see pset_getload- avg(3C)). Processes with one or more LWPs bound to processor sets in the given list are reported even when the -L option is not used. -j projlist Report only processes or lwps whose project ID is in the given list. Each project ID can be specified as either a project name or a numerical project ID. See project(4). -J Report information about processes and projects. In this mode prstat displays separate reports about processes and projects at the same time. -k tasklist Report only processes or lwps whose task ID is in tasklist. -L Report statistics for each light-weight process (LWP). By default, prstat reports only the number of LWPs for each process. -m Report microstate process accounting information. In addition to all fields listed in -v mode, this mode also includes the percentage of time the process has spent processing system traps, text page faults, data page faults, waiting for user locks and waiting for CPU (latency time). -n ntop[,nbottom] Restrict number of output lines. The ntop argument determines how many lines of process or lwp statistics are reported, and the nbottom argument determines how many lines of user, task, or projects statistics are reported if the -a, -t, -T, or -J options are specified. By default, prstat displays as many lines of output that fit in a window or terminal. When you specify the -c option or direct the out- put to a file, the default values for ntop and nbottom are 15 and 5. -p pidlist Report only processes whose process ID is in the given list. -P cpulist Report only processes or lwps which have most recently executed on a CPU in the given list. Each CPU is identified by an integer as reported by psrinfo(1M). -R Put prstat in the real time scheduling class. When this option is used, prstat is given priority over time-sharing and interactive pro- cesses. This option is available only for superuser. -s key Sort output lines (that is, processes, lwps, or users) by key in descending order. Only one key can be used as an argument. There are five possible key values: cpu Sort by process CPU usage. This is the default. pri Sort by process priority. rss Sort by resident set size. size Sort by size of process image. time Sort by process execution time. -S key Sort output lines by key in ascending order. Possible key values are the same as for the -s option. See -s. -t Report total usage summary for each user. The summary includes the total number of processes or LWPs owned by the user, total size of process images, total resident set size, total cpu time, and percentages of recent cpu time and system memory. -T Report information about processes and tasks. In this mode prstat displays separate reports about processes and tasks at the same time. -u euidlist Report only processes whose effective user ID is in the given list. Each user ID may be specified as either a login name or a numerical user ID. -U uidlist Report only processes whose real user ID is in the given list. Each user ID may be specified as either a login name or a numerical user ID. -v Report verbose process usage. This output format includes the percentage of time the process has spent in user mode, in system mode, and sleeping. It also includes the number of voluntary and involuntary context switches, system calls and the number of signals received. Statistics that are not reported are marked with the - sign. -z zoneidlist Report only processes or LWPs whose zone ID is in the given list. Each zone ID can be specified as either a zone name or a numerical zone ID. See zones(5). -Z Report information about processes and zones. In this mode, prstat displays separate reports about processes and zones at the same time. OUTPUT
The following list defines the column headings and the meanings of a prstat report: PID The process ID of the process. USERNAME The real user (login) name or real user ID. SIZE The total virtual memory size of the process, including all mapped files and devices, in kilobytes (K), megabytes (M), or gigabytes (G). RSS The resident set size of the process (RSS), in kilobytes (K), megabytes (M), or gigabytes (G). The RSS value is an estimate provided by proc(4) that might underestimate the actual resident set size. Users who want to get more accurate usage information for capacity plan- ning should use the -x option to pmap(1) instead. STATE The state of the process: cpuN Process is running on CPU N. sleep Sleeping: process is waiting for an event to complete. run Runnable: process in on run queue. zombie Zombie state: process terminated and parent not waiting. stop Process is stopped. PRI The priority of the process. Larger numbers mean higher priority. NICE Nice value used in priority computation. Only processes in certain scheduling classes have a nice value. TIME The cumulative execution time for the process. CPU The percentage of recent CPU time used by the process. If executing in a non-global zone and the pools facility is active, the percent- age will be that of the processors in the processor set in use by the pool to which the zone is bound. PROCESS The name of the process (name of executed file). LWPID The lwp ID of the lwp being reported. NLWP The number of lwps in the process. With the some options, in addition to a number of the column headings shown above, there are: NPROC Number of processes in a specified collection. MEMORY Percentage of memory used by a specified collection of processes. The following columns are displayed when the -v or -m option is specified USR The percentage of time the process has spent in user mode. SYS The percentage of time the process has spent in system mode. TRP The percentage of time the process has spent in processing system traps. TFL The percentage of time the process has spent processing text page faults. DFL The percentage of time the process has spent processing data page faults. LCK The percentage of time the process has spent waiting for user locks. SLP The percentage of time the process has spent sleeping. LAT The percentage of time the process has spent waiting for CPU. VCX The number of voluntary context switches. ICX The number of involuntary context switches. SCL The number of system calls. SIG The number of signals received. Under the -L option, one line is printed for each lwp in the process and some reporting fields show the values for the lwp, not the process. OPERANDS
The following operands are supported: count Specifies the number of times that the statistics are repeated. By default, prstat reports statistics until a termination signal is received. interval Specifies the sampling interval in seconds; the default interval is 5 seconds. Example 1: Reporting the Five Most Active Super-User Processes The following command reports the five most active super-user processes running on CPU1 and CPU2: example% prstat -u root -n 5 -P 1,2 1 1 PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/LWP 306 root 3024K 1448K sleep 58 0 0:00.00 0.3% sendmail/1 102 root 1600K 592K sleep 59 0 0:00.00 0.1% in.rdisc/1 250 root 1000K 552K sleep 58 0 0:00.00 0.0% utmpd/1 288 root 1720K 1032K sleep 58 0 0:00.00 0.0% sac/1 1 root 744K 168K sleep 58 0 0:00.00 0.0% init/1 TOTAL: 25, load averages: 0.05, 0.08, 0.12 Example 2: Displaying Verbose Process Usage Information The following command displays verbose process usage information about processes with lowest resident set sizes owned by users root and john. example% prstat -S rss -n 5 -vc -u root,john PID USERNAME USR SYS TRP TFL DFL LCK SLP LAT VCX ICX SCL SIG PROCESS/LWP 1 root 0.0 0.0 - - - - 100 - 0 0 0 0 init/1 102 root 0.0 0.0 - - - - 100 - 0 0 3 0 in.rdisc/1 250 root 0.0 0.0 - - - - 100 - 0 0 0 0 utmpd/1 1185 john 0.0 0.0 - - - - 100 - 0 0 0 0 csh/1 240 root 0.0 0.0 - - - - 100 - 0 0 0 0 powerd/4 TOTAL: 71, load averages: 0.02, 0.04, 0.08 The following exit values are returned: 0 Successful completion. 1 An error occurred. See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ |ATTRIBUTE TYPE |ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWcsu | +-----------------------------+-----------------------------+ proc(1), psrinfo(1M), psrset(1M), sar(1M), pset_getloadavg(3C), proc(4), project(4), attributes(5), zones(5) The snapshot of system usage displayed by prstat is true only for a split-second, and it may not be accurate by the time it is displayed. When the -m option is specified, prstat tries to turn on microstate accounting for each process; the original state is restored when prstat exits. See proc(4) for additional information about the microstate accounting facility. The total memory size reported in the SIZE and RSS columns for groups of processes can sometimes overestimate the actual amount of memory used by processes with shared memory segments. 13 Sep 2005 prstat(1M)
All times are GMT -4. The time now is 09:09 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy