VOSwatcher Code
Brought to you by:
jp2542
# VOS Watcher Script README # Copyright (C) <2009> <John Pipkins> # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. INTRODUCTION The VOS watcher script is designed to collect performance information that would be useful in the resolution of customer reported issues. It is intended to be a well defined tool in terms of what it provides and how it does it. The hope is that it will provide a reference that allows an agreed upon starting point for problem resolution. It's a script for a couple of reasons. First, most companies and government agency will not run binaries. They want to see exactly how things work and have to option to remove stuff. Second, more people can write scripts than C/C++. That means more people can contribute to the effort. WHAT IT DOES The VOS script provides time correlated output from standard Veritas, Oracle, and Sun utilites. The output is limited to a one hour window to focus on the state of the system around an anticipated or induced event. This window can be changed. The main script runs at a higher priority to assure that it is able to keep an accurate record. The utilities it uses are mature and will not 'hog' the system. Their impact on a multiprocessor system is at the noise level. Should VOS watcher cause an observable impact to the monitored system, then you have found the issue....Insufficient cpu resources. WHAT IT PROVIDES The script provides the following information by default: 1. vmstat 1 5 2. iostat -Cnx 1 5 3. mpstat 1 5 4. network stat 5. lockstat over 5 seconds (solaris only) 6. both ATT and USB style ps commands 7. vxstat for each Veritas disk group 8. last_written file with the number of the last cycle written. (The next file is the beginning of the data set.) It also has a start script (start_watch) and a stop script (stop_watch). WHAT IT DOES BETTER THAN THE OLD WATCHER VOSwatcher now runs on Linux (CentOS/Redhat) and Solaris. It automatically detects which system. And note that the file extension (cycle number) is a 3 digit zero filled number. All files with the same extension were collected during the same cycle. VOSsort can be run in a log directory to product a sorted concatenation of the data files into a single file. This should make it easier to peruse the data in chronological order. WHAT IT NEEDS Suggestions and comments on how to improve our data gathering on the intial effort. What would you like added? Oracle stuff on the fly? vxfsstats? We have a limited execution window that must be met to keep this tool useful. We need to get what has a high probability of shrinking the solution space with minimal impact on the customer and us. CAVEATS This was written using the LCD (Lowest common denominator) concept and will work on any Solaris or CentOS/Redhat platform. I'll add other platforms as time permits or if someone adds it. I really would appreciate some help on this... jp jp.pipkins@gmail.com