From: Sharon P. [mailto:[email protected]] :
I’ve written some small Ruby apps for monitoring things at work but
am not enjoying distributing them.
Seems for each person I have to install Ruby, then the extra
libraries I use (currently just ori8 and net-ssh). I’d like to write
argggh, of all db, why oracle?? ora is too big. try postgres (i know
mysql/sqlite, but i am bias for postgres =).
a gui front end, but shudder at the thought of then having to
install qt / fox / whatever.
arggh, first the big db, now a gui?? this will tax your monitored
clients and will skew your observations (mem/cpu/etc); consider
heizenberg principle
Am I missing something here? Do I have to do this for each
machine in order to just let someone else run a Ruby script?
No. you just need the ruby interpreter. If your client script is small,
less than 2k lines, you can load it on the server. The only ruby script
you’ll need then is that script loader.
How can I lessen the pain?
Is it possible to install the libraries on the LAN and each machine
run them from there?
if you need other libs, especially gems, you may load it centrally. they
are quite small.
I don’t mind installing the Ruby interpreter and I even like Scite
(with modified a ruby proffile :), it’s the extra stuff I’m talking
about.
I’ve tried rubyscript2exe (we’re talking Windows boxes), and
it seems
to work fine for some things but breaks the Oracle bindings.
no need. as long as you’re the admin, you can just copy the files on
each pc. And you can automate that using ruby.
I’ve considered a web app, but I don’t have access to a place to
serve it.
a web app, like rails, is less resource hogger than oracle.
if rails is “big” for you, try nitro or iowa or webrick.
run a drb server on the central node, the clients will run drb clients.
to summ:
a. server: running web, db, app, drb server
b. clients: running ruby, rubyscript running drb client
c. drb clients just report the values/data (no gui/image transfers) to
the drb server
d. drb server pipes captured data to the database
e. admin monitors data from db using web app
f. admin manages clients, monitors, schedules, and updates, using web
app
g. admin may trigger realtime monitor on a particular node anytime
(h. if you don’t want drb, you can use http. disadvantage is that only
the client can initiate)
just an idea.
kind regards -botp