a 'Dgk@sddlZddlmZmZddlmZddlmZddlmZm Z ddl m Z m Z e eZeejddd Zeed d d Ze jed ddZedddZdS)N)datetimetimezone)Optional)version)handlersinstantiated_handler_registry)errorsidentity)returncCs tjd}t|tjsdS|S)z'Get instantiated KVP telemetry handler.Z telemetryN)rZregistered_itemsget isinstancerHyperVKvpReportingHandler) kvp_handlerr?/usr/lib/python3.9/site-packages/cloudinit/sources/azure/kvp.pyget_kvp_handlers  r)reportr cCs,t}|durtddS|d|dS)z/Report to host via PROVISIONING_REPORT KVP key.Nz.KVP handler not enabled, skipping host report.FZPROVISIONING_REPORTT)rLOGdebugZ write_key)rrrrrreport_via_kvps   r)errorr cCs t|S)N)rZas_encoded_report)rrrrreport_failure_to_host&src Csxz t}Wn.ty:}zd|}WYd}~n d}~00tddtdtt j  d|g}t |S)Nzfailed to read vm id: zresult=successzagent=Cloud-Init/z timestamp=zvm_id=) r Z query_vm_id ExceptionrZ encode_reportrZversion_stringrZnowrZutcZ isoformatr)Zvm_idZid_errorrrrrreport_success_to_host*s    r)ZloggingrrtypingrZ cloudinitrZcloudinit.reportingrrZcloudinit.sources.azurerr Z getLogger__name__rr rstrboolrZReportableErrorrrrrrrs