oB]c@scdZddlmZddlmZiidd6d6ZdZd ZeZeed S( s cloud-init reporting framework The reporting framework is intended to allow all parts of cloud-init to report events in a structured manner. i(t DictRegistryi(tavailable_handlerstlogttypetloggingcCsx|jD]v\}}|s8tj|dtq n|j}tj|jd}tj|||}tj||q WdS(sUpdate the instantiated_handler_registry. :param config: The dictionary containing changes to apply. If a key is given with a False-ish value, the registered handler matching that name will be unregistered. tforceRN( titemstinstantiated_handler_registrytunregister_itemtTruetcopyRtregistered_itemstpopt register_item(tconfigt handler_namethandler_configtclstinstance((s@/usr/lib/python2.7/site-packages/cloudinit/reporting/__init__.pytupdate_configurations    cCs@x9tjjD](\}}t|dr|jqqWdS(Ntflush(RR RthasattrR(t_thandler((s@/usr/lib/python2.7/site-packages/cloudinit/reporting/__init__.pyt flush_events(sN( t__doc__tregistryRthandlersRtDEFAULT_CONFIGRRR(((s@/usr/lib/python2.7/site-packages/cloudinit/reporting/__init__.pyt s