%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /lib/python2.7/site-packages/salt/returners/
Upload File :
Create Path :
Current File : //lib/python2.7/site-packages/salt/returners/splunk.pyc

�
���^c@@s�dZddlmZmZmZddlZddlZddlZddlZddl	Z
ddlmZdZ
eZeZeje�ZdZd�Zd�Zd	�Zddd
�Zdefd��YZdS(
u�

Send json response data to Splunk via the HTTP Event Collector
Requires the following config values to be specified in config or pillar:

.. code-block:: yaml

    splunk_http_forwarder:
      token: <splunk_http_forwarder_token>
      indexer: <hostname/IP of Splunk indexer>
      sourcetype: <Destination sourcetype for data>
      index: <Destination index for data>

Run a test by using ``salt-call test.ping --return splunk``

Written by Scott Pack (github.com/scottjpack)

i(tabsolute_importtprint_functiontunicode_literalsN(tsixi��usplunkcC@stS(uY
    Return virtual name of the module.
    :return: The virtual name of the module.
    (t__virtualname__(((s9/usr/lib/python2.7/site-packages/salt/returners/splunk.pyt__virtual__*scC@s
t|�S(u?
    Send a message to Splunk via the HTTP Event Collector
    (t_send_splunk(tret((s9/usr/lib/python2.7/site-packages/salt/returners/splunk.pytreturner2scC@s�yDtdd�}tdd�}tdd�}tdd�}Wntk
retjd�dSXi|d6|d6|d	6|d
6}|S(Nu
config.getusplunk_http_forwarder:tokenusplunk_http_forwarder:indexeru splunk_http_forwarder:sourcetypeusplunk_http_forwarder:indexu7Splunk HTTP Forwarder parameters not present in config.utokenuindexeru
sourcetypeuindex(t__salt__t	ExceptiontlogterrortNone(ttokentindexert
sourcetypetindextsplunk_opts((s9/usr/lib/python2.7/site-packages/salt/returners/splunk.pyt_get_options9s

"cC@st�}tjtd�tjjj|��|d}|d}t||�}i}|dkr~|j
i|dd6�n|j
i|d6�|dkr�|j
i|dd6�n|j
i|d6�|j
i|d6�tjtd�tjjj|��|j|�tS(	u�
    Send the results to Splunk.
    Requires the Splunk HTTP Event Collector running on port 8088.
    This is available on Splunk Enterprise version 6.3 or higher.

    uOptions: %sutokenuindexeruindexu
sourcetypeueventuPayload: %sN(
RRtinfotstrtsalttutilstjsontdumpsthttp_event_collectorR
tupdatet	sendEventtTrue(teventtindex_overridetsourcetype_overridetoptsthttp_event_collector_keythttp_event_collector_hosttsplunk_eventtpayload((s9/usr/lib/python2.7/site-packages/salt/returners/splunk.pyRFs$	


RcB@s>eZddeed�Zdd�Zdd�Zd�ZRS(uu8088c	C@s�||_g|_||_d|_|r6||_ntj�|_|rWdg}n	dg}x'|d|dgD]}|j|�qsWdj|�|_	t
r�tj|j�tj|j	�ndS(Niuhttps://uhttp://u:u/services/collector/eventu(
RtbatchEventst
maxByteLengthtcurrentByteLengththosttsockettgethostnametappendtjoint
server_urithttp_event_collector_debugRtdebug(	tselfRthttp_event_serverR)thttp_event_portthttp_event_server_sslt	max_bytestbuildURIti((s9/usr/lib/python2.7/site-packages/salt/returners/splunk.pyt__init__os 					cC@s�id|jd6}|s8tjttj���}nd|kr^|ji|jd6�ni|d6}|j|�tj|j	dt
jjj
|�d|dt�}tr�tj|j�tj|�ndS(NuSplunk u
Authorizationuhostutimetdatatheaderstverify(RRt	text_typetintttimeRR)trequeststpostR.RRRRthttp_event_collector_SSL_verifyR/RR0ttext(R1R%t	eventtimeR:R9tr((s9/usr/lib/python2.7/site-packages/salt/returners/splunk.pyR�s

	cC@s�d|kr&|ji|jd6�ntjjj|�}t|�}|j||jkr�|j	�t
r�tjd�q�n|j||_|s�t
jttj���}ni|d6}|j|�|jj|�dS(Nuhostu
auto flushingutime(RR)RRRRtlenR(R't
flushBatchR/RR0RR<R=R>R&R,(R1R%RCtserialized_payloadt
payloadLengthR9((s9/usr/lib/python2.7/site-packages/salt/returners/splunk.pyt
batchEvent�s


cC@srt|j�dkrnid|jd6}tj|jddj|j�d|dt�}g|_d|_ndS(NiuSplunk u
AuthorizationR9u R:R;(	RER&RR?R@R.R-RAR((R1R:RD((s9/usr/lib/python2.7/site-packages/salt/returners/splunk.pyRF�s
0	(t__name__t
__module__Rt_max_content_bytesR8RRIRF(((s9/usr/lib/python2.7/site-packages/salt/returners/splunk.pyRms(t__doc__t
__future__RRRtloggingR?R*R>tsalt.utils.jsonRtsalt.extRRLtFalseRAR/t	getLoggerRJRRRRRR
RtobjectR(((s9/usr/lib/python2.7/site-packages/salt/returners/splunk.pyt<module>s"			
'

Zerion Mini Shell 1.0