Re: lug-bg: Предаване на данни между 2 машинки.
- Subject: Re: lug-bg: Предаване на данни между 2 машинки.
- From: Peter Pentchev <roam@xxxxxxxxxxx>
- Date: Tue, 29 Jun 2004 16:04:24 +0300
On Tue, Jun 29, 2004 at 03:41:24PM +0300, Христофор Памятних wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Проблема е следния - драснах един скрипт който да събира разнообразни
> статистики от трафика на ppp интерфейсите. Идеята е по статистиките които
> събира въпросния скрипт да се чертаят графики на друга машинка. В момента се
> чудя как да прехвърля съответните числа. Оказа се че по snmp за съжаление не
> става - има ограничение за дължината на текстов низ. Сещам се за няколко идеи
> но ни една от тях ми се струва елегантана - напр. демонче което да виси на
> едикой си порт и да си признава всичко което му кажат, апаш и временни записи
> в база. Просто ми се ще да исползвам нещо съвсем стандартно от типа на snmp.
> Става дума за около 300 различни числени стойности.
Един от начините да го направиш е да си измислиш файлов формат и после
да направиш така:
Изпращач:
- събира данните;
- генерира файл;
- прави SSH до другата машина, като подава от другата страна команда
safecat tempdir/ queuedir/
- изтрива си файла.
Получател:
- върти едно скриптче, което периодично проверява дали в queuedir/ има
файлове (имаше нещо, наречено watchdir или нещо такова, само че в
момента силно ми се губи);
- когато намери файл, изпълнява върху него определена команда (твое
скриптче вероятно), и ако тя върне резултат 0, изтрива файла, а ако
върне различно от 0, генерира някакво съобщение за грешка и може и да
спре да работи;
- твоето скриптче, което се изпълнява върху всеки файл, гълта данните и
ги обработва както решиш.
При изпращача споменах safecat:
http://www.pobox.com/~lbudney/linux/software/safecat.html
При получателя имаше нещо, което да watch-ва директорията, но наистина в
момента не мога да се сетя как се казваше. Такова нещо обаче можеш и
сам да си напишеш - въпрос е точно на opendir(), readdir(), readdir(),
readdir(), rewinddir(), sleep(), readdir(), readdir(), rewinddir(),
sleep(), rinse(), repeat(). Аз мислех, че съм release-нал едно такова,
ама май всъщност си е останало за вътрешна употреба в един проект, а не
е много ясно дали мога да го измъкна оттам... мога да напиша ново за
половин час, но първо ще е добре да се види дали няма готово.
Та така.. дет' се вика, надявам се да помогна с нещо :)
Поздрави,
Петър
--
Peter Pentchev roam@xxxxxxxxxxx roam@xxxxxxxx roam@xxxxxxxxxxx
PGP key: http://people.FreeBSD.org/~roam/roam.key.asc
Key fingerprint FDBA FD79 C26F 3C51 C95E DF9E ED18 B68D 1619 4553
This sentence contradicts itself - or rather - well, no, actually it doesn't!
Attachment:
pgpMRRvEOZlBK.pgp
Description: PGP signature
|