Hmmm... Didn't seem to like my first test attempt (see below).
Nothing showed up in my clientlog.
[skmsp01]
file:/var/log/mail_statistics
log:/var/adm/messages:10240
log:`/tmp/dirMon.ksh 2>&1 >/tmp/dirMon.log; echo /tmp/dirMon.log`
------------------------------------------------------------------------
*From:* Haertig, David F (Dave) [mailto:haertig (at) avaya.com]
*Sent:* Friday, June 08, 2007 3:13 PM
*To:* hobbit (at) hswn.dk
*Subject:* RE: [hobbit] How to run an arbitary script on the client end?
Thanks. Your suggestion triggered an idea on how to do this.
client-local.cfg supports backticks to run a program to generate a
logfile name dynamically. So I'll try to make use of that and do
something like this (haven't tested it yet):
Add to client-local.cfg
================
log:`/path/to/the/program 2>&1 1>/path/to/the/logfile; echo
/path/to/the/logfile`
If this exact syntax won't work, it should be easy to use some similar
concept. The built-in backtick processing of the log: directive being
the key point.
Thanks!
------------------------------------------------------------------------
*From:* Charles Jones [mailto:jonescr (at) cisco.com]
*Sent:* Friday, June 08, 2007 2:49 PM
*To:* hobbit (at) hswn.dk
*Subject:* Re: [hobbit] How to run an arbitary script on the client end?
As far as I know there is no built-in functionality to dynamically
execute remote scripts and get their output. Others may have better
suggestions, but one way of doing it, is you could set the client-side
script to be launched by the hobbit client every X minutes, (via
clientlaunch.cfg). I'm not sure of the best way to get the script
output back to the hobbit server though. I guess you could have the
script output to a logfile , and then have the hobbit server monitor
that log via the normal log monitoring mechanism
.
-Charles
Haertig, David F (Dave) wrote:
Is there a way to confgure a client, via client-local.cfg or
otherwise, to run some arbitrary command on the client and send it's
stdout/stderr back to the hobbit server? I have a few simple shell
scripts that exist on some clients that it would be nice to invoke
and then read their results on the server end using the
"$BBHOME/bin/bb localhost clientlog..." method. Similar to the way a
"file:path_to_file" directive will collect a file's metadata? I want
something like "runprogram:path_to_program"
I am doing this currently using a server-side script that ssh'es to
the client machine and runs what it needs. I would rather have the
normal Hobbit client collect the data output by the client-side
program, upload that, and my server-side script would parse that
resulting clientlog rather than going and collecting it's own data.
If this is possible.
Thanks!