01-04-2007
Quote:
My head is rolling if i lose 1 byte of logging output ever, under all circumstances
How then are you handling disk full, I/O errors, bus errors, and kernel panic? Personally, I know that it is not possible to prevent file I/O data loss under some circumstances. Even if you trap every signal you can think of.
If you're that worried about the logging data why not let a db handle it?
Use a threaded log server, create a sequential key nomenclature that is unique to the thread - the db can do that - Oracle for example:sessionid & sequence. Guaranteed to be unique to 10^31 iterations. Reading the data back from the db is trivial - read by key.
Or implement a key scheme for regular file i/o.
That means any process can write and flush one record, because the record order is preserved by the key. Example key: date-pid-24hour time in seconds-<counter or ms>
A simple sort on read resurrects the correct order.
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
I just download solaris 10, from sun.com, I have them ziped in my HD,
How can I install them, so I can run solaris10, my present os is RH9;
THANKS (5 Replies)
Discussion started by: mxlst14
5 Replies
2. UNIX for Advanced & Expert Users
i want to log the output of ps.
i want to see the ps outpıt line by line as i see in the stdout
but when i write it to a file it concatenates all lines
do you have any suggestion?
what i am using:
echo `ps -ef -o cmd,cpu,pcpu,cputime,nswap`>>log.txt
what i am getting:
Mon Sep 11... (3 Replies)
Discussion started by: gfhgfnhhn
3 Replies
3. Shell Programming and Scripting
Hi,
Currently I'm working on a lenghty script so I figured it would be useful to create a logfile so that output that is displayed on the users screen is also stored in the log file for later reference...... kinda like the whole point of a log file! Anyway, I was just wondering if there was an... (3 Replies)
Discussion started by: _Spare_Ribs_
3 Replies
4. Solaris
I'm looking for a CLI utility that will capture all the commands you type at the Solaris CLI (and their output) into a file. I'm sure it's called "scripter", but I can't find anything on a command called scripter.
Does anyone know of a such a command?
Your help will be greatly... (3 Replies)
Discussion started by: soliberus
3 Replies
5. UNIX for Dummies Questions & Answers
Hi,
I am trying to calculate the CPU Usage by getting the difference between the idle time reported by /proc/stat at 2 different intervals. Now the 4th entry in the first line of /proc/stat will give me the 'idle time'. But I also came across /proc/uptime that gives me 2 entries : 1st one as the... (0 Replies)
Discussion started by: coderd
0 Replies
6. UNIX for Dummies Questions & Answers
Hi,
This might be a bit stupid question, but what command to use to create like a session which logs the command line, and output on to the screen?
Basically, a log to a file, where I can review what I had install, uninstall, etc.
Thank you (4 Replies)
Discussion started by: kittoinc
4 Replies
7. UNIX for Advanced & Expert Users
I have a reqirement to serialise various rsh scripts that hit my server from an external scheduler. No matter how many scripts come via rsh, only one should execute at a time and others should wait.
I have made the scheduler make a request to my shell script with the command to be run as a... (4 Replies)
Discussion started by: nkamatam
4 Replies
8. Red Hat
Hi,
I am a newbie in Linux.
Appended is the output of cat /proc/version and uname -a.
# cat /proc/version
Linux version 2.6.32.12-115.fc12.i686 (mockbuild@x86-03.phx2.fedoraproject.org) (gcc version 4.4.3 20100127 (Red Hat 4.4.3-4) (GCC) ) #1 SMP Fri Apr 30 20:34:53 UTC 2010
# uname -a... (7 Replies)
Discussion started by: Hari_Ganesh
7 Replies
9. Shell Programming and Scripting
How to convert string into an integer or number
For example :
% set tim = `date`
% echo $tim
Tue Feb 22 16:25:08 IST 2011
here How to increment time by 10 hrs
like 16+10 , here 16 is a string in date cmd. .. how to convert 16 to an integer and added to a another nimber ?
Thanks... (3 Replies)
Discussion started by: sbhamidi
3 Replies
10. Solaris
I need to log the size of physical/virtual memory consumed by any given given process using c/c++ code running on solaris and aix without using the proc filesystem. Please advise. (1 Reply)
Discussion started by: Manisha Paul
1 Replies
LEARN ABOUT NETBSD
cap_mkdb
CAP_MKDB(1) BSD General Commands Manual CAP_MKDB(1)
NAME
cap_mkdb -- create capability database
SYNOPSIS
cap_mkdb [-b | -l] [-v] [-f outfile] file1 [file2 ...]
DESCRIPTION
cap_mkdb builds a hashed database out of the getcap(3) logical database constructed by the concatenation of the specified files.
The database is named by the basename of the first file argument and the string ``.db''. The getcap(3) routines can access the database in
this form much more quickly than they can the original text file(s).
The ``tc'' capabilities of the records are expanded before the record is stored into the database.
The options are as follows:
-b Use big-endian byte order for database metadata.
-f outfile
Specify a different database basename.
-l Use little-endian byte order for database metadata.
-v Print out the number of capability records in the database.
The -b and the -l flags are mutually exclusive. The default byte ordering is the current host order.
FORMAT
The following is a description of the hashed database created by cap_mkdb. For a description of the format of the input files see
termcap(5).
Each record is stored in the database using two different types of keys.
The first type is a key which consists of the first capability of the record (not including the trailing colon (``:'')) with a data field
consisting of a special byte followed by the rest of the record. The special byte is either a 0 or 1, where a 0 means that the record is
okay, and a 1 means that there was a ``tc'' capability in the record that couldn't be expanded.
The second type is a key which consists of one of the names from the first capability of the record with a data field consisting a special
byte followed by the first capability of the record. The special byte is a 2.
In normal operation names are looked up in the database, resulting in a key/data pair of the second type. The data field of this key/data
pair is used to look up a key/data pair of the first type which has the real data associated with the name.
EXIT STATUS
The cap_mkdb utility exits 0 on success and >0 if an error occurs.
SEE ALSO
dbopen(3), getcap(3), termcap(5)
BSD
June 6, 1993 BSD