Page MenuHomePhorge

bonnie.po
No OneTemporary

Authored By
Unknown
Size
31 KB
Referenced Files
None
Subscribers
None

bonnie.po

# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2013, Jeroen van Meeuwen
# This file is distributed under the same license as the Kolab Groupware package.
#
# Translators:
msgid ""
msgstr ""
"Project-Id-Version: Kolab Documentation\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-28 13:30+1300\n"
"PO-Revision-Date: 2014-11-28 00:36+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: German (http://www.transifex.com/projects/p/kolab-"
"documentation/language/de/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: de\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../../source/architecture-and-design/bonnie.rst:44
msgid "Archival, Backup, Data-Loss Prevention and e-Discovery"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:46
msgid ""
"Different challenges could potentially be resolved by implementing a single "
"solution, providing each of the functional aspects in an integrated fashion."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:50
msgid "A brief overview of the functional components:"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:52
msgid "**Archival**"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:54
msgid ""
"Archival is the retention of business records, in a fashion that allows them "
"to be used as evidence."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:57
msgid ""
"Many archival solutions only include actual communications that descend over "
"an SMTP server that can keep the archival solution in the loop."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:61
msgid "**Backup**"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:63
msgid ""
"Backup is the lesser part to the ability to restore, a frequently occuring, "
"everyday event."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:66
msgid ""
"It is often requested backup happens on a per-mailbox or even per-message "
"level."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:69
msgid "**Data-Loss Prevention**"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:71
msgid "**e-Discovery**"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:73
msgid ""
"Maintenance of a changelog on object entries that can change state (email "
"read/deleted), or are volatile (changes to an appointment)."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:77
msgid "Functional Requirements"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:79
msgid "**Audit Trail**"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:81
msgid "**Item Changelog**"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:83
msgid "A per-item changelog, of whom changed what, to what item, and when."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:85
msgid "**Queue ID Chasing**"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:87
msgid ""
"Chase so-called Queue IDs for messages being exchanged with the outside "
"world, and internally between systems throughout the deployment."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:92
msgid "Functional Design"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:95
msgid "Functional Components"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:97
msgid "**Dealer**"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:99
msgid ""
"A dealer is a script executed once for each event notification, used to "
"receive the initial event notification from Cyrus IMAP 2.5, and broadcast "
"the event on to the message bus or queue."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:103
msgid ""
"The dealer awaits confirmation of a broker having received the event "
"notification."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:106
msgid "**Broker**"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:108
msgid ""
"A broker retrieves the notifications from the message bus or queue, and "
"acknowledges having received the event notification."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:111
msgid ""
"The event notification is put in to a persistent queue, awaiting workers to "
"become ready for handling the event notification."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:114
msgid "**Worker**"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:116
msgid ""
"The worker is where the processing happens -- one can have as many workers "
"as necessary, or as few as required."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:119
msgid ""
"The worker announces its presence to the broker, which subsequently assigns "
"jobs to the worker [#]_."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:122
msgid ""
"The worker may require additional information to be obtained, such as the "
"message payload [#]_."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:125
msgid "**Collector**"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:127
msgid ""
"The collector daemon is an optional component subscribing to requests for "
"additional information that can only reliably be obtained from a Cyrus IMAP "
"backend spool directory."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:131
msgid "**System Log Centralization**"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:133
msgid ""
"The centralization of system log files such as :file:`/var/log/maillog` aids "
"in tracing the exchange of messages as they descend across infrastructure, "
"and helps in associating, for example, a Login event to an IMAP frontend "
"with the corresponding web server session [#]_."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:140
msgid "Operational Requirements"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:195
msgid "Broker -- Worker Interaction"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:197
msgid "When the broker starts up, it creates three listener sockets:"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:199
msgid "A dealer router,"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:201
msgid ""
"used for incoming event notifications from IMAP servers passed through the "
"Dealer component."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:203
msgid "A worker router,"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:205
msgid "used to exchange job information and notification payload with workers."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:207
msgid "A control router,"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:209
msgid "used to exchange worker and job state information."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:211
msgid ""
"When the worker starts, it connects to both the control router and worker "
"router."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:214
msgid ""
"Using the controller channel, the worker let's the broker know it is ready "
"to receive a job."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:230
msgid "The broker adds the worker to its list of workers."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:232
msgid ""
"The broker will continue to receive occasional messages from the worker to "
"allow it to determine whether or not it is still available."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:236
msgid ""
"The broker, maintaining a queue of jobs to assign to workers, lets the "
"worker know about a newly assigned job -- again using the controller channel."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:252
msgid ""
"The worker internally triggers the retrieval of the job using the worker "
"channel."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:269
msgid ""
"The worker is now in state BUSY and must respond within a set interval or "
"the broker will set the job back in to PENDING state, and mark the worker as "
"unavailable."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:276
msgid "Worker Design"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:278
msgid ""
"The worker is built out of plugins, that subscribe to an event type, where "
"event types available are listed in :ref:`and-bonnie-event-notification-"
"types`."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:282
msgid ""
"Each event type individually may require handling -- for example, a logout "
"event is associated with the corresponding login event."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:285
msgid "The following components will be pluggable and configurable:"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:287
msgid ""
"subscribing to a message bus or queue, as ``inputs``, initially including "
"only ``zmq``."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:290
msgid ""
"event handling, as ``handlers``, initially including only one handler per "
"event notification and higher level processors ``changelog`` and "
"``freebusy`` to detect changes in groupwware objects."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:295
msgid ""
"result output, as ``output``, initially including only ``elasticsearch``."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:298
msgid ""
"storage for transactions pending or aggregated meta information, as "
"``storage``, initialy including only ``elasticsearch``."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:301
msgid ""
"Assuming an installation path of :file:`bonnie/worker/`, the following "
"depicts its tree layout:"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:319
msgid ""
"To take the changelog and freebusy handlers as an example, the following "
"event notification types may need to be subscribed to."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:322
#: ../../source/architecture-and-design/bonnie.rst:386
msgid ":ref:`and-bonnie-event-mailboxcreate`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:324
msgid "A new mailbox that is an event folder may have been created."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:326
msgid ""
"The initial event is handled by the base handler for the event notification "
"type."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:329
msgid ""
"Passing this event right through to the changelog handler would make it "
"require obtaining the ``/shared/vendor/kolab/folder-type`` and/or ``/private/"
"vendor/kolab/folder-type`` metadata value(s) in order to determine whether "
"the folder indeed is an event folder."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:334
msgid ""
"However, the setting of metadata is an event separate from the mailbox "
"creation, and at the moment the handler receives the initial event "
"notification, the metadata may not have been set yet."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:340
msgid ""
"At the time of this writing, no separate event notification for setting "
"folder-level METADATA exists."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:343
#: ../../source/architecture-and-design/bonnie.rst:387
msgid ":ref:`and-bonnie-event-mailboxdelete`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:345
msgid "A mailbox that was an event folder may have been deleted."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:347
#: ../../source/architecture-and-design/bonnie.rst:388
msgid ":ref:`and-bonnie-event-mailboxrename`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:349
msgid "A mailbox that was an event folder may have been renamed."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:351
#: ../../source/architecture-and-design/bonnie.rst:391
msgid ":ref:`and-bonnie-event-messageappend`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:353
msgid ""
"Only applicable to event folders, this depicts a new or updated version of "
"an existing event has been appended."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:356
#: ../../source/architecture-and-design/bonnie.rst:392
msgid ":ref:`and-bonnie-event-messagecopy`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:358
msgid ""
"One or more events may have been copied from an event folder into another "
"event folder."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:361
#: ../../source/architecture-and-design/bonnie.rst:395
msgid ":ref:`and-bonnie-event-messagemove`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:363
msgid ""
"One or more events may have been moved from one event folder into another "
"event folder."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:368
msgid ""
"Plugins that are interested in the vendor/kolab/folder-type METADATA "
"value(s) of a folder can reply with additional commands for the collector "
"component which will put the current job back into the PENDING state and "
"send it through the handler again once the requested information was added "
"to the notification payload."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:378
msgid "Event Notification Types"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:380
msgid "Event types available include, in alphabetical order:"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:382
msgid ":ref:`and-bonnie-event-flagsclear`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:383
msgid ":ref:`and-bonnie-event-flagsset`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:384
msgid ":ref:`and-bonnie-event-login`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:385
msgid ":ref:`and-bonnie-event-logout`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:389
msgid ":ref:`and-bonnie-event-mailboxsubscribe`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:390
msgid ":ref:`and-bonnie-event-mailboxunsubscribe`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:393
msgid ":ref:`and-bonnie-event-messageexpire`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:394
msgid ":ref:`and-bonnie-event-messageexpunge`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:396
msgid ":ref:`and-bonnie-event-messagenew`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:397
msgid ":ref:`and-bonnie-event-messageread`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:398
msgid ":ref:`and-bonnie-event-messagetrash`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:399
msgid ":ref:`and-bonnie-event-quotaexceeded`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:400
msgid ":ref:`and-bonnie-event-quotawithin`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:401
msgid ":ref:`and-bonnie-event-quotachange`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:406
msgid "FlagsClear"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:408
msgid ""
"This event notification type indicates one or more messages have had its "
"flags cleared."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:411
msgid ""
"Flags having been cleared may include ``\\Seen``, but also ``\\Deleted``, "
"and any custom other flag on an IMAP message."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:414
#: ../../source/architecture-and-design/bonnie.rst:424
#: ../../source/architecture-and-design/bonnie.rst:444
#: ../../source/architecture-and-design/bonnie.rst:453
msgid "Subscribe to this notification for:"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:416
#: ../../source/architecture-and-design/bonnie.rst:426
msgid "Backup/Restore"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:417
#: ../../source/architecture-and-design/bonnie.rst:427
#: ../../source/architecture-and-design/bonnie.rst:446
#: ../../source/architecture-and-design/bonnie.rst:455
msgid "e-Discovery"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:422
msgid "FlagsSet"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:432
msgid "Login"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:434
msgid "Additional information to obtain for this event notification type:"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:436
msgid "The persistent unique attribute for the user object."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:437
msgid "Additional LDAP object attributes."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:439
msgid "Information storage:"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:441
msgid ""
"This event needs to be stored until it can be associated with a :ref:`and-"
"bonnie-event-logout` event notification type."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:451
msgid "Logout"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:460
msgid "MailboxCreate"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:462
msgid "Additional information to obtain"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:467
msgid "MailboxDelete"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:472
msgid "MailboxRename"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:477
msgid "MailboxSubscribe"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:482
msgid "MailboxUnsubscribe"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:487
msgid "MessageAppend"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:492
msgid "MessageCopy"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:497
msgid "MessageExpire"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:502
msgid "MessageExpunge"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:507
msgid "MessageMove"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:512
msgid "MessageNew"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:517
msgid "MessageRead"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:522
msgid "MessageTrash"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:527
msgid "QuotaExceeded"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:532
msgid "QuotaWithin"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:537
msgid "QuotaChange"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:540
msgid "An Integrated Solution"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:542
msgid "The following aspects of an environment need to be tracked;"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:544
msgid ""
"Logs such as ``/var/log/maillog``, which contain the information about "
"exchange of messages between internal and external systems and software "
"(Postfix/LMTP -> Cyrus IMAP)."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:548
msgid "Cyrus IMAP 2.5 Events broadcasted."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:585
msgid ""
"In this picture, IMAP (using Cyrus IMAP 2.5) issues so-called :term:`event "
"notifications` to a message bus, that can be picked up by the appropriate "
"subscribers."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:589
msgid ""
"Note that the subscribers are different components to plug in and enable, or "
"leave out -- not everyone has a need for Archival and e-Discovery "
"capabilities."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:592
msgid ""
"As such, a component plugged in could announce its presence, and start "
"working backwards as well as start collecting the relevant subsets of data "
"in a retro- active manner."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:618
msgid ""
"To allow scaling, the intermediate medium is likely a message bus such as "
"ActiveMQ, AMQP, ZeroMQ, etc."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:621
msgid ""
"Between Cyrus IMAP 2.5 and the message bus must be a thin application that "
"is capable of:"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:624
msgid "Retrieving the payload of the message(s) involved if necessary,"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:625
msgid "Submit the remainder to a message bus."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:627
msgid "This is because Cyrus IMAP 2.5:"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:629
msgid ""
"at the time of this writing, does not support submitting the event "
"notifications to a message bus directly [#]_,"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:632
msgid ""
"the size of the message payload is likely to exceed the maximum size of an "
"event notification datagram [#]_."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:635
msgid ""
"Processing of inbound messages must happen real-time or near-time, but "
"should also be post-processed:"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:638
msgid ""
"e-Discovery requires post-processing to sufficiently associate the message "
"in its context, and contains an audit trail."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:641
msgid ""
"Archival and Backup require payload, and may also use post-processing to "
"facilitate Restore."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:645
msgid "Event Notifications"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:647
msgid "The following events trigger notifications:"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:682
msgid ""
"In addition, Kolab Groupware makes available the following event "
"notifications:"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:692
msgid "This means the following event notifications are lacking:"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:694
msgid "METADATA change notification"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:696
msgid ""
"It is possible to run Cyrus IMAP 2.5 notifications in a blocking fashion, "
"allowing the (post-)processing operation(s) to complete in full before the "
"IMAP session is allowed to continue / confirms the modification/mutation."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:706
msgid "Queries and Information Distribution"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:709
msgid "ZeroMQ"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:733
msgid "Dealer <-> Broker <-> Worker Message Exchange"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:735
msgid ""
"Modelled after an article about tracking worker status at http://rfc.zeromq."
"org/spec:14"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:767
msgid "**Dealer - Broker Concerns**"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:769
msgid ""
"The dealer is queuing without a high-water mark and without a local swap "
"defined. It is only after the broker is available this queue is flushed. "
"This could introduce a loss of notifications."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:773
msgid ""
"The dealer is not awaiting confirmation in the sense that it will replay the "
"submission if needed, such as after the dealer has been restarted. This too "
"could introduce a loss of notifications."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:777
msgid ""
"The dealer is certainly not awaiting confirmation from any worker that the "
"notification had been submitted to for handling."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:780
msgid ""
"The dealer is a sub-process of the cyrus-imapd service, and should this "
"service be restarted, is not handling such signals to preserve state."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:783
msgid "**Broker Concerns**"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:785
msgid ""
"The broker is keeping the job queue in memory for fast updates and responses."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:788
msgid ""
"The broker component shall periodically dump the job queue and registered "
"worker and collector connections into a persistant storage layer which has "
"yet to be defined."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:877
msgid "Storage Layout and Schema"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:880
msgid "Logging Event Notifications"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:882
msgid ""
"Logging event notification into the storage backend (currently "
"elasticsearch) is inspired by logstash and writes to daily rotated indexes "
"``logstash-Y-m-d`` using document type ``logs``. The basic schema of an "
"event notification contains the following attributes:"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:903
msgid ""
"The very minimal attributes required for an event notification entry are"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:905
msgid "``@timestamp``: The UTC time when the event was logged"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:906
msgid "``@version``: Bonnie data API version"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:907
msgid "``event``: The Cyrus IMAP event"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:908
msgid ""
"``service``: \"imap\" denoting that this logstash entry represents an IMAP "
"event notification"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:909
msgid "``session_id``: The Cyrus IMAP session identifier"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:910
msgid "``user``: The authenticated user who triggered the event"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:912
msgid ""
"Depending on the event type, additional attributes containg message IDs, "
"message headers or payload, flag names or ACL. For message or mailbox based "
"events the ``uri`` attribute is added and refers to the mailbox/folder the "
"operation was executed on."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:916
msgid ""
"From the basic attributes, some relations to metadata (see :ref:`and-bonnie-"
"storing-metadata`) are extracted and the logstash entry is extended with "
"identifiers referring to user and folder metadata entries:"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:920
msgid ""
"``folder_uniqueid``: The gobally unique folder identifer of a mailbox folder "
"from IMAP."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:922
msgid ""
"``folder_id``: Links to a folder entry representing the current state of a "
"mailbox folder at the time the event occurred. This includes folder name, "
"metadata and access rights."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:925
msgid ""
"``user_id``: Unique identifier (from the LDAP ``nsuniqueid`` attribute) of "
"the use who executed the logged operation in IMAP."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:932
msgid "Storing Metadata"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:934
msgid ""
"Metadata records are used to amend log data with more complete and "
"persistent information of rather volatile attributes like username and "
"mailbox URIs issued by Cyrus IMAP 2.5 notifications. For example, the same "
"physical human being (jane.gi@example.org) could change email addresses for "
"any of many unrelated causes (jane.doe@example.org) and IMAP folders can be "
"renamed at any given time."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:941
msgid "Users"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:943
msgid "Stored in ``objects/user`` with the following schema:"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:954
msgid ""
"The ``nsuniqueid`` attribute from the LDAP is used as the primary key/id of "
"user records."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:958
msgid "Folders"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:960
msgid "Stored in ``objects/folder`` with the following schema:"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:989
msgid ""
"The primary key/id of folder records is computed as a checksum of all "
"attributes and metadata entries considered relevant for the \"state\" of a "
"folder. This means that a new folder record is created when ACLs or folder "
"type metadata is changed."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:994
msgid ""
"The keys of ``acl`` entries provided by the Collector module from IMAP data "
"are translated into static user identifers."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:999
msgid ""
"In order to compute the folder identifier, the complete set of folder "
"information like metadata and acl has to be pulled from IMAP using a "
"collector job on every single event notification. Once Cyrus IMAP supports "
"notifications for metadata changes (`#3698 <https://issues.kolab.org/"
"show_bug.cgi?id=3698>`_), this could be skipped and the folder metadata "
"records can be updated on specific events only."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:1009
msgid "Object Relations"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:1011
msgid ""
"Although elasticsearch isn't a relational database, the Bonnie storage model "
"implies a simple object relation model between logs and metadata."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:1052
msgid "Accessing the Collected Data"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:1054
msgid ""
"Some of the collected data, primarily changelogs of groupware objects, shall "
"be made available to Kolab clients to display the history of a certain "
"object or creation/last-modification information including the according "
"usernames which is not stored in the Kolab data format itself."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:1059
msgid ""
"A dedicated web service provides access to the archived data through an API "
"and thereby translates the raw information from the storage backend into "
"more concrete groupware object related data."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:1063
msgid "See the :ref:`and-bonnie-client-api` for details."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:1067
msgid "Footnotes"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:1070
msgid ""
"The worker shall be a multi-threaded daemon (using multiprocessing.Pool), "
"that is a pluggable application."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:1075
msgid ":ref:`and-bonnie-worker-design`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:1076
msgid ":ref:`and-bonnie-broker-worker-interaction`"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:1080
msgid ""
"The worker shall determine based on functional features enabled, and "
"existing data, whether or not it requires a copy of the original message "
"payload."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:1086
msgid ""
"It is assumed we'll be working with RSyslog, Logstash and Elastic Search."
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:1091
msgid ""
"http://git.cyrusimap.org/cyrus-imapd/tree/notifyd?"
"id=8bdaeae3f891ba2a748ba91a4c324ee11346e292"
msgstr ""
#: ../../source/architecture-and-design/bonnie.rst:1095
msgid ""
"Needs further investigation, for the actual maximum size of a datagram may "
"have ceased to be hard-coded. Yet, to submit a large message through the "
"notification daemon while the notification target is eligible to pick up the "
"message contents from the filesystem seems like duplication."
msgstr ""

File Metadata

Mime Type
text/x-po
Expires
Sat, Apr 4, 5:18 AM (5 d, 14 h ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
18822676
Default Alt Text
bonnie.po (31 KB)

Event Timeline