Ed
Barlow's
Sybase
Tools
ED BARLOW's SERVER DOCUMENTER
Eds
System
Documenter
is a free utility that completely documents your server environment,
provides extensive morning review reports, and allows customization so
you can get site specific reports.
The way this tool works is that you run a batch in the middle of the night
that collects error logs and interogates your servers and systems. The
data is stored on your server in the directory system_information_data.
The batch then creates a set of web pages in the server_documenter_data
directory. Finally, this set of web pages will be ftp'ed to your web server
so you can view them in the morning.
Package Goals
The tool has three goals:
-
To provide a set of cross server reports on system configuration that can
be useful for auditing, disaster recovery, and for simply understanding how
your environment is set up.
-
To provide a set of morning review reports that should allow you to completely
understand the state of your servers within a few minutes of arrival in the
morning. You can then be proactive to fix problems (misconfigurations,
space problems, and whatever).
-
To provide a simple interface to allow you to add your own site specific
reporting. You want to see something in the morning, just add the query
or command to the configuration file and it will automatically run the query
on one specific system/server or on a set of systems/servers.
This package needs to be installed through the master configuration utility
of eds sybase tools. It is not supported as a standalone utility.
Implemtation Details
The package comes in the server_documenter subdirectory of the eds sybase tools
installation. It comes with a variety of commands, but essentially you will
need to know:
-
nightly_sybase_batch.pl
The nightly data collecter. Gets files via ftp (passwords are found in the
password file you created when you installed the toolkit). Logs into your
servers and checks em out. Information saved to disk files.
-
custom_reports.dat
A list of custom reports for your environment. The comments indicate syntax.
-
document_all.pl
Builds the documentation from information allready collected. It may collect
some information during the process. Try running document_all.pl -? for
syntax. You can build only a subset of the reports if you choose.
-
ftp_to_website.pl
Copys the files to your web site. This is a modified version of ftp_to_website.dist which is changed during the configuration process to include your server
information.
-
weekly_sybase_batch.pl
Run once a week - recalculates everything - rebuilding the dbm database from
scratch. Fully discovers everything about your environment. This is what
is run during the toolkit configuration process.
The database
I built a cusstom perl library for this tool. It is called Sybase::SybAdminDb
and contains the api for a dbm database that contains all kinds of configuration
information about your environment. This seemed a much superior approach to
creating flat files for everything or to the approach of discovering all
configuration informaton in real time. The main program that loads this database
is called discover.pl. The database is contained in two files in the root
of the tool installation (pass_db.dir pass_db.pag) and are in standard perl
dbm format.
Information Collected
The tool kind of gets everything i could think of. It collects:
- Sybase Error Logs
- Sybase Backup Server Logs
- Sybase Run Files
- Sybase Configuration Information From the server
The specific set of files collected is governed by the toolkit configuration
files ( sybase_passwords.dat and unix_passwords.dat ) which identify the
sybase directories on your remote systems, the servers you own, etc...
Cron
You will need to set up a cron job for the nightly and weekly batches.
License
As with all my software, i retain copyright. For right to use information,
please read the file LICENSE.txt
Enhancements
If i find a corporate sponsor, i will enhance this tool to perform intra
day monitoring. Other than that im not sure what else i could do here.
The package identifies all kinds of potential problems - a MUCH better
set of rules than i have seen on *ANY* monitoring package. Of course,
the reason this is true is cause every time i see a problem i just add
it to the rules base... So ... If you find a problem that can be checked
for, send me the rule/code and i can add.