Sponsored Content
Top Forums Shell Programming and Scripting Bash script to periodically monitor a process's memory usage Post 303045299 by nezabudka on Monday 16th of March 2020 02:49:12 AM
Old 03-16-2020
Hello and welcome
It's customary to help on this resource, that is, you solve a problem and you don't succeed or you're stuck on something and don't know how to continue. Therefore, if you have a desire to try to write such a script yourself, then everyone here will readily help you. In addition,
creation is much more interesting and useful. The script is quite ordinary and writing will take much less time than finding a ready-made solution. If you are ready to make an effort, it is useful to start by breaking the task down into stages.

First, launching the scheduled task. For this, I think 'crontab' will work well.

Second, getting value of consumption process memory. The 'ps' utility is well suited for this, which can take a command name with the option '-C' or the process id with '-p' option. Using the formatted '-o pmem=' output, you can get memory consumption in percentage terms. This value is of type float, but cutting off the decimal part will not be a problem.

And last, comparing the obtained value with a constant, we determine the need for restarting the process.

My regards
These 4 Users Gave Thanks to nezabudka For This Post:
 

9 More Discussions You Might Find Interesting

1. Programming

Monitor CPU usage and Memory Usage

how can i monitor usages of CPU, Memory, Hard disk etc. under SUN Solaries through a c program or java program i want to store that data into database so i can show it graphically thanks in advance (2 Replies)
Discussion started by: Gajanad Bihani
2 Replies

2. Shell Programming and Scripting

Memory usage of a process

hi all, i want to write a script that checks the memory usage of processes and send a mail with the name of the process witch is using more then 300mb RAM. dose anybody have a sample script or an idea how i can make it ? PROCCESSES="snmpd sendmail" for myVar in $PROCCESSES do ... (7 Replies)
Discussion started by: tafil
7 Replies

3. AIX

How to monitor the IBM AIX server for I/O usage,memory usage,CPU usage,network..?

How to monitor the IBM AIX server for I/O usage, memory usage, CPU usage, network usage, storage usage? (3 Replies)
Discussion started by: laknar
3 Replies

4. UNIX for Dummies Questions & Answers

Monitor Memory of a process

Hi, I need to monitor the memory usage of a particular process continuously. As of now I am using the following command: ps -fu <user name> -o pid,comm,vsz | grep <process_name> | grep -v grep The output of this command gives me what i need except i want the output to keep getting updated... (3 Replies)
Discussion started by: archana485
3 Replies

5. UNIX for Advanced & Expert Users

How often should I monitor the CPU and memory usage ?

Hi all, When you monitor the CPU and memory usage, how often do you do it ? Do it too often or too rarely will both cause the problem. So does anyone have hand-on experience ? And for my case, the requirement says that when CPU usage is above X% or memory usage is above Y%, I should reject... (5 Replies)
Discussion started by: qiulang
5 Replies

6. Emergency UNIX and Linux Support

How to monitor a process memory utilization?

hi frnds, I want to monitor a particular process very closly on how much memory it is taking. i tried with TOP and PRSTAT commands that is not giving what exactly i need. In my application, there is a memory leak happening, i want to know when it is occuering, means which transcation is... (9 Replies)
Discussion started by: vij_krr
9 Replies

7. Shell Programming and Scripting

Memory Usage Monitor on Linux/SunOS Servers

ok, so i'm trying to write a shell script (not perl) that monitors memory usage on a server. but i'm confused as to what fields exactly determines that yes, memory is low on a particular server. it sounds simple enough, but it really isn't. what do I look for in the field below? ... (1 Reply)
Discussion started by: SkySmart
1 Replies

8. UNIX for Dummies Questions & Answers

What to monitor for memory usage?

hi guys I am having a doubt about memory monitoring on linux system what I should be monitoring? memory usage? o swap usage? I am using some monitoring tools but I am confused to what monitor for alerting for example this case looks the memory usage is very high and it's like that all... (2 Replies)
Discussion started by: karlochacon
2 Replies

9. Shell Programming and Scripting

Shell script for logging cpu and memory usage of a Linux process

I am looking for a way to log and graphically display cpu and RAM usage of linux processes over time. Since I couldn't find a simple tool to so (I tried zabbix and munin but installation failed) I started writing a shell script to do so The script file parses the output of top command through... (2 Replies)
Discussion started by: andy_dufresne
2 Replies
newtask(1)							   User Commands							newtask(1)

NAME
newtask - create new task and optionally change project SYNOPSIS
newtask [-p project] [-v] [-c pid | [-Fl] [command...]] DESCRIPTION
The newtask command executes the user's default shell or a specified command, placing the executed command in a new task owned by the spec- ified project. The user's default shell is the one specified in the passwd database, and is determined using getpwnam(). Alternatively, newtask can be used to cause an already running process to enter a newly created task. A project for the new task can also be specified in this form of the command. This might be desirable for processes that are mission critical and cannot be restarted in order to put them into a new project. In the case that extended accounting is active, the newtask command can additionally cause the creation of a task accounting record marking the completion of the preceding system task. OPTIONS
The following options are supported: -c pid Cause a running process to enter a newly created task. A project for the new task can also be specified using the -p option. The invoking user must either own the process or have super-user privileges. If the project is being changed, the process owner must be a member of the specified project, or the invoking user must have super-user privileges. When the project is changed for a running process, its pool binding as well as resource controls are modi- fied to match the configuration of the new project. Controls not explicitly specified in the project entry is preserved. This option is incompatible with the -F and -l options. -F Creates a finalized task, within which further newtask or settaskid(2) invocations would fail. Finalized tasks can be useful at some sites for simplifying the attribution of resource consumption. -l Changes the environment to what would be expected if the user actually logged in again as a member of the new project. -p Changes the project ID of the new task to that associated with the given project name. The invoking user must be a valid member of the requested project, or must have super-user privileges, for the command to succeed. If no project name is specified, the new task is started in the invoking user's current project. -v Verbose: displays the system task id as the new system task is begun. OPERANDS
The following operands are supported: project The project to which resource usage by the created task should be charged. The requested project must be defined in the project databases defined in nsswitch.conf(4). command The command to be executed as the new task. If no command is given, the user's login shell is invoked. (If the login shell is not available, /bin/sh is invoked.) EXAMPLES
Example 1: Creating a New Shell The following example creates a new shell in the canada project, displaying the task id: example$ id -p uid=565(gh) gid=10(staff) projid=10(default) example$ newtask -v -p canada 38 example$ id -p uid=565(gh) gid=10(staff) projid=82(canada) Example 2: Running the date Command The following example runs the date command in the russia project: example$ newtask -p russia date Tue Aug 31 11:12:10 PDT 1999 Example 3: Changing the Project of an Existing Process The following example changes the project of the existing process with a pid of 9999 to russia: example$ newtask -c 9999 -p russia EXIT STATUS
The following exit values are returned: 0 Successful execution. 1 A fatal error occurred during execution. 2 Invalid command line options were specified. FILES
/etc/project Local database containing valid project definitions for this machine. /proc/pid/* Process information and control files. ATTRIBUTES
See attributes(5) for a description of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWcsu | +-----------------------------+-----------------------------+ SEE ALSO
proc(1), id(1M), poolbind(1M), execvp(2), setrctl(2), settaskid(2), setproject(3PROJECT), nsswitch.conf(4), proc(4), project(4), attributes(5) SunOS 5.10 17 Nov 2004 newtask(1)
All times are GMT -4. The time now is 11:39 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy