Skip to main content

Subscribe, Acquire, and Re-Advertise products.

Project description

==================
MetPX-Sarracenia
==================

[ Français_ ]

Overview
--------

MetPX-Sarracenia is a data duplication or distribution pump that leverages
existing standard technologies (web servers and the `AMQP <http://www.amqp.org>`_
brokers) to achieve real-time message delivery and end to end transparency
in file transfers. Data sources establish a directory structure which is carried
through any number of intervening pumps until they arrive at a client. The
client can provide explicit acknowledgement that propagates back through the
network to the source. Whereas traditional file switching is a point-to-point
affair where knowledge is only between each segment, in Sarracenia, information
flows from end to end in both directions.

At it's heart, sarracenia exposes a tree of web accessible folders (WAF), using
any standard HTTP server (tested with apache). Weather applications are soft
real-time, where data should be delivered as quickly as possible to the next
hop, and minutes, perhaps seconds, count. The standard web push technologies,
ATOM, RSS, etc... are actually polling technologies that when used in low latency
applications consume a great deal of bandwidth an overhead. For exactly these
reasons, those standards stipulate a minimum polling interval of five minutes.
Advanced Message Queueing Protocol (AMQP) messaging brings true push to
notifications, and makes real-time sending far more efficient.

homepage: http://metpx.sf.net

Man Pages online: http://metpx.sourceforge.net/#sarracenia-documentation


Sarracenia is an initiative of Shared Services Canada ( http://ssc-spc.gc.ca )
in response to internal needs of the Government of Canada.


.. _Français:

Survol
------

MetPX-Sarracenia est un engin de copie et de distribution de données qui utilise
des technologies standards (tel que les services web et le courtier de messages
AMQP) afin d'effectuer des transferts de données en temps réel tout en permettant
une transparence de bout en bout. Alors que chaque commutateur Sundew est unique
en soit, offrant des configurations sur mesure et permutations de données multiples,
Sarracenia cherche à maintenir l'intégrité de la structure des données, tel que
proposée et organisée par la source, à travers tous les noeuds de la chaîne,
jusqu'à destination. Le client peut fournir des accusés de réception qui se
propagent en sens inverse jusqu'à la source. Tandis qu'un commutateur traditionnel
échange les données de point à point, Sarracenia permet le passage des données
d'un bout à l'autre du réseau, tant dans une direction que dans l'autre.

Sarracenia, à sa plus simple expression, expose une arborescence de dossiers disponibles
sur la toile ("Web Accessible Folders"). Le temps de latence est une composante
névralgique des applications météo: les minutes, et parfois les secondes, sont comptées.
Les technologies standards, telles que ATOM et RSS, sont des technologies qui consomment
beaucoup de bande passante et de ressouces lorsqu'elles doivent répondre à ces contraintes.
Les standards limitent la fréquence maximale de vérification de serveur à cinq minutes.
Le protocol de séquencement de messages avancés (Advanced Message Queuing Protocol,
AMQP) est une approche beaucoup plus efficace pour la livraison d'annonces de
nouveaux produits.

Sarracenia est une initiative de Services Partagés Canada ( http://ssc-spc.gc.ca ) en réponse à des besoins interne du gouvernement du Canada.

portail: http://metpx.sf.net




**2.16.11a4**

* Added moving of log directory from var/log -> log, and replacement of var directory with a symlink.
* Added setting of passwords by default for broker users by sr_audit.
* Added --reset flag interpretation by sr_audit so that permissions can be updated easily for all users.
So now when upgrading after 'log' -> 'report' transition, just do:

``sr_audit --reset True --users foreground``

and it will overwrite all the permission regexp's of the broker users.
If someone has funny permissions, that could be a problem.
* Added 'set_passwords' flag to sr_audit, defaulting to True.
if set to false, users are given blank passwords.... not sure if this is useful.
trying to understand what to do with this in the case of LDAP based users.
* Added creation of send directory to flow_setup.sh
* un-commented the over-ride default exchange for reporting in tsource2send.conf...
it still needs overriding.
* Corrected the regexp permission masks to allow sources to write to any
exchange that starts with xs_<user>... rather than just specifically that source.
* Corrected the regexp permissions to allow reading by subs from same.
* Reverted patch in sarra that broke download URL's.
* Add old log exchanges to sr_audit for compatibility with pre-transition clients.
* Changed test of sender to compare against the ones watch, rather than subscriber.
* Added measurable test to flow test for sender.
* Adding sr_watch to flow_test.
* Added sr_sender to flow test.
* Removing '/var' so log files are in the normal place now.
* Optimizing the flow_test script (so it's shorter, more straightforward and regular.)
* Documentation cleanup

**2.16.11a3**

* Fixing a cosmetic but ugly bug. Caused by the URL fix
* Add unready list to prevent posting unreadable files

**2.16.11a2**

* fix bug #61: change outputs to better present URL's in logs.
* just naming of some routines that were imported from sundew, add prefix metpx_...
* fix bug #54: Adds interpretation of sundew-specific delivery options to sr_subscribe.

**2.1611a1**

* Another String too long fix.
* Potential fix for bug #55 (chdir)

**2.16.10a2**

* Fix issue #42 (header length in AMQP)
* Numerous doc changes

**2.16.10a1**

* Fixes to self test suite
* Added calls to the usage strings on a bunch of components
* Added centralized time format conversion in sr_util
* Added sr_report(1) manual page.
* Bugfix for headers too long.
* Patch to sr_poll to prevent crashing with post_exchange_split.
* Tentative fix for bug #50 improper requirement of write permissions
* Process headers dynamically
* Documentation Updates.

**2.16.08a1**

* Major Change: Changed "log" to "report" in all components.
* Added test case for sr_sender
* Documentation Update

**2.16.07a3**

* Ian's fix for sr_sender borked with post_exchange_split.
* Jun's fix for chmod and chmod_dir to be octal.

**2.16.07a2**

* Fixed typos that broke the package install in debian

**2.16.07a1**

* Added post_exchange_split config option (allows multiple cooperating sr_winnow instances) code, test suite mode, and documentation.
* fix logger output to file (bug #39 on sf)
* sr_amqp: Modified truncated exponential backoff to use multiplication instead of a table. So can modify max interval far more easily. Also values are better.
* nicer formatting of sleep debug print.
* sr_post/sr_watch: added atime and mtime to post. (FR #41)
* sr_watch: handle file rename in watch directory (addresses bug #40)
* sr_watch: fix for on_post trigger to be called after filtering events.
* sr_sender: Added chmod_dir support (bug #28)
* plugin work: Made 'script incorrect' message more explicit about what is wrong in the script.
* plugin work: word smithery, replaced 'script' by 'plugin' in execfile. so the messages refer to 'plugin' errors.
* Added plugin part_check, which verbosely checks checksums,
* plugin work: Added dmf_renamers, modified for current convention, and word smithery in programmers guide.
* Tested (de-bugged) the missing file_rxpipe plugin, added it to the default list.
* Documentation improvements: sundew compatibility options to sr_subscribe.
* Documentation improvements: moving code from subscriber to programming guide.
* Added a note for documenting difference between senders and subscription clients in the message plugins.
* Made reference to credentials.conf more explicit in all the command line component man pages. (Ian didn't understand he needed it... was not obvious.)
* Moved information about how to access credentials from plugin code from subscriber guide to programming guide.
* Turned a bit of the sr_watch man page into a CAVEAT section.
* Added a note about how file renaming is (poorly) handled at the moment.
* Test suite: removing overwrites of config files from test_sr_watch.sh
* Test suite: Continuing the quest: getting rid of passwords in debug output,
* Test suite: adding explicit mention of exchange wherever possible.
* Fixed self-test to authenticate to broker as tfeed, but look for messages from tsource.

**0.0.1**


* Initial release


Michel Grenier <michel.grenier@IamRetiredNow.ca> (Retired)
dd_subscribe, sr_subscribe, sr_sarra, sr_post,
All of the code, really.

Jun Hu <jun.hu3@canada.ca>
Documentation Diagrams, lead on deployments (head tester!)

Peter Silva <peter.silva@canada.ca>
Project Manager & Evangelist. A lot of Documentation, and Review of Docs.
Architect? Much discussion with Michel. Small bug fixes.

Khosrow Ebrahimpour <khosrow.ebrahimpour@canada.ca>
Packaging & Process (Debian, Launchpad, some pypi, the vagrant self-test)

Daluma Sen <Daluma.Sen@canada.ca>
sr_watch, and worked on sr_post as well for caching.

Murray Rennie <Murray.Rennie@canada.ca>
sr_winnow, worked on that with Michel.

Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

metpx_sarracenia-2.16.11a4-py3-none-any.whl (146.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page