+
    Û1j  ã                   óB   € ^ RI t ^ RIt^ RIHtHtHt  ! R R]]4      tR# )é    N)ÚPluginÚ	PluginOptÚUbuntuPluginc            	       óº   a € ] tR t^t o RtRt]! RR]RR7      ]! RR]R	R7      ]! R
R]RR7      .t	Rt
Rt] R2t] R2tRtRtRtRtRtRtR tR tR tR tRtV tR# )ÚCharmedOpenSearchzCharmed OpenSearchÚcharmed_opensearchÚuserÚadminz&Username for opensearch, to check APIs)ÚdefaultÚval_typeÚdescÚpasswordÚ z&Password for opensearch, to check APIsÚall_journalFzExport all the journal entriesz/var/log/opensearchz/etc/opensearchú/certificatesz/opensearch.ymlz/var/snap/opensearch/currentz/var/snap/opensearch/commonÚ	localhostÚ9200c                ó  € V P                    V P                   2pV P                  V R 2V R2.4       V P                  V R24       V P	                  V P                    V P
                   2RR7       V P                  R4      '       d   V P                  RRR7       MV P                  RR	RR
7       V P                  R4      '       d,   V P                  V P                   V P                   R24       M*V P                  V P                   V P                   R24       V P                  RRR7       V P                  V P                    V P                   24       RV P                   RV P                   2pV P                  V4       R# )r   z/opensearch.keystorez/*Úcertificates_paths)Úsuggest_filenamer   zsnap.opensearch.*T)ÚunitsÚ	allfieldsiè  )r   Úlinesr   Úall_logsz/*.logzsnap get opensearch -dÚsnap_get_opensearchzhttps://Ú:N)Úsnap_current_pathÚetc_pathÚadd_forbidden_pathÚadd_copy_specÚadd_dir_listingÚcertificates_pathÚ
get_optionÚadd_journalÚsnap_common_pathÚlog_pathÚadd_cmd_outputÚget_hostname_portÚconfig_pathÚhostnameÚportÚ
export_api)ÚselfÚopensearch_config_directoryÚbase_urls   &  ÚG/usr/lib/python3/dist-packages/sos/report/plugins/charmed_opensearch.pyÚsetupÚCharmedOpenSearch.setup,   s—  € Ø*.×*@Ñ*@Ð)AØ*.¯-©-¨ð(:Ð#ð 	×ÑØ*Ð+¨=Ð9Ø*Ð+Ð+?Ð@ð!
ô 	ð 	×ÑÐ9Ð:¸"Ð=Ô>ð 	×ÑØ×%Ñ%Ð& t×'=Ñ'=Ð&>Ð?Ø1ð 	ô 	
ð �?‰?˜=×)Ò)Ø×ÑÐ#6À$ÐÕGà×ÑÐ#6¸dØ'+ð ô -ð �?‰?˜:×&Ò&Ø×Ñ $×"7Ñ"7Ð!8¸¿¹¸ÀrÐJÕKà×Ñ $×"7Ñ"7Ð!8¸¿¹¸ÀvÐNÔOð 	×ÑØ$Ø2ð 	ô 	
ð 	×Ñ $×"8Ñ"8Ð!9¸$×:JÑ:JÐ9KÐLÔMØ˜dŸm™m˜_¨A¨d¯i©i¨[Ð9ˆØ�‰˜Ö!ó    c                óè  €  \        VRRR7      ;_uu_ 4       p\        P                  ! V4      ;'       g    / pRRR4       XP                  R4      '       d    \	        VP                  R4      4      V n        VP                  R4      '       d"   \	        VP                  R4      4      V n        R# R#   + '       g   i     L€; i  \         d#   pT P                  RT RT 24        Rp?R# Rp?ii ; i)	z-Get hostname and port number parsing as YAML ÚrzUTF-8)ÚencodingNznetwork.publish_hostz	http.portzFailed to parse z: )	ÚopenÚyamlÚ	safe_loadÚgetÚstrr*   r+   Ú	ExceptionÚ	_log_info)r-   Úopensearch_config_fileÚfÚconfigÚerrs   &&   r0   r(   Ú#CharmedOpenSearch.get_hostname_portV   sÁ   € ð	OÜÐ,¨c¸G×DÕDÈÜŸš¨Ó*×0Ð0¨b�÷ Eà�z‰zÐ0×1Ò1Ü # F§J¡JÐ/EÓ$FÓ G�”Ø�z‰z˜+×&Ò&Ü §
¡
¨;Ó 7Ó8�–	ñ '÷	 E×Dûô ô 	OØ�N‰NÐ-Ð.DÐ-EÀRÈÀuÐM×NÒNûð	Oús9   ‚C ˜!B1¹C Á5C ÂC Â1C	Â<C ÃC1ÃC,Ã,C1c                ó.  € \         P                  P                  4       p\         P                  P                  R 4      '       gI   V P	                  R4      '       g   V P
                  P                  R4       R# V P	                  R4      VR &   \         P                  P                  R4      '       g   V P	                  R4      VR&   . ROpV F  pV P                  RV RV R2VVR	7       K   	  . ROpV F  pV P                  RV R
V R2VVR	7       K   	  R# )ÚOPENSEARCH_PWDr   z:dump_error: password are not provided, skipping API dumps.NÚOPENSEARCH_USERr	   z:sh -c 'curl -k -u $OPENSEARCH_USER:$OPENSEARCH_PWD -X GET z
/_cluster/z?pretty')r   Úenvz/_cat/Ú')ÚstatsÚsettingsÚhealth)znodes?vÚindicesÚshardsÚaliases)ÚosÚenvironÚcopyr:   r#   ÚsoslogÚwarningr'   )r-   r/   Útemp_envÚcluster_collectÚcollectÚcat_collects   &&    r0   r,   ÚCharmedOpenSearch.export_apib   s  € Ü—:‘:—?‘?Ó$ˆÜ�z‰z�~‰~Ð.×/Ò/Ø—?‘? :×.Ò.Ø—‘×#Ñ#ð+ôñ Ø)-¯©¸Ó)DˆHÐ%Ñ&ä�z‰z�~‰~Ð/×0Ò0Ø*.¯/©/¸&Ó*AˆHÐ&Ñ'ò
ˆó
 'ˆGØ×ÑðØ"˜ :¨g¨Y°hð@à!(Øð	  ö ñ 'ò
ˆó #ˆGØ×ÑðØ"˜ 6¨'¨°!ð5à!(Øð	  ö ó #r3   c                ób   € V P                    V P                   2pV P                  V R R4       R# )z0(\s*plugins\.security\.ssl\..+password\s*:\s+).*z\1"*********"N)r   r)   Údo_path_regex_sub)r-   r>   s   & r0   ÚpostprocÚCharmedOpenSearch.postprocŠ   s<   € à%)×%;Ñ%;Ð$<Ø%)×%5Ñ%5Ð$6ð#8Ðà×ÑØ%Ð&Ø?Øö	
r3   )r*   r+   N)Ú
opensearch)zjujud-machine-*.service)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú
short_descÚplugin_namer   r;   ÚboolÚoption_listr&   r   r"   r)   r   r%   r*   r+   ÚpackagesÚservicesr1   r(   r,   rZ   Ú__static_attributes__Ú__classdictcell__)Ú__classdict__s   @r0   r   r      s±   ø‡ € Ø%€JØ&€KáØ˜G¨cØ9ô	
ñ 	Ø ¨SØ9ô	
ñ 	Ø 5°4Ø1ô	
ð€Kð %€HØ €HØ#˜* MÐ2ÐØ�J˜oÐ.€KØ6ÐØ4ÐØ€HØ€DØ€HØ+€Hò("òT
Oò&÷P
ð 
r3   r   )rN   r8   Úsos.report.pluginsr   r   r   r   © r3   r0   Ú<module>rl      s#   ðó 
ã ç >Ñ >ôC
˜ ö C
r3   