<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
B
    ¿öYœ  ã               @   s   d Z ddlmZ ddlmZ ddlZddlZddlZddlZddlm	Z	 ddl
mZmZ ddlmZ dd	„ Zd
d„ Zdd„ Zdd„ Zdd„ ZdS )z 
raven.scripts.runner
~~~~~~~~~~~~~~~~~~~~

:copyright: (c) 2012 by the Sentry Team, see AUTHORS for more details.
:license: BSD, see LICENSE for more details.
é    )Úabsolute_import)Úprint_functionN)ÚOptionParser)ÚClientÚget_version)Újsonc             C   sR   yt  |¡}W n. tk
r<   td||f ƒ t d¡ Y nX t|j| j|ƒ d S )Nz2Invalid JSON was used for option %s.  Received: %sé   )	r   ÚloadsÚ
ValueErrorÚprintÚsysÚexitÚsetattrÚvaluesÚdest)ÚoptionZopt_strÚvalueÚparser© r   úE/opt/alt/python37/lib/python3.7/site-packages/raven/scripts/runner.pyÚ
store_json   s    r   c               C   s   t tdƒrt ¡ S d S )NÚ
getloadavg)ÚhasattrÚosr   r   r   r   r   Úget_loadavg    s    
r   c              C   s4   ydd l } W n tk
r    d S X |  t ¡ ¡d S )Nr   )ÚpwdÚImportErrorÚgetpwuidr   Úgeteuid)r   r   r   r   Úget_uid&   s
    r   c          	   C   sô   t j d¡ x(dD ] }t j d|t| j|ƒf ¡ qW t j d¡ | j}| ¡ sft j d¡ t  d¡ |  ¡ s„t j d¡ t  d¡ | dd	d
dddœdœ¡}t j d¡ t j 	¡  | j
d|tjd| di ¡tƒ tƒ dœd}t j d|f ¡ d S )NzClient configuration:
)Zbase_urlÚprojectZ
public_keyZ
secret_keyz  %-15s: %s
Ú
z'Error: DSN configuration is not valid!
r   z)Error: Client reports as being disabled!
Údatazraven.scripts.runnerz
raven.testÚGETzhttp://example.com)ÚmethodÚurl)ZculpritÚloggerZrequestzSending a test message... z5This is a test message generated using ``raven test``TÚtags)ÚuserZloadavg)Úmessager"   ÚlevelÚstackr'   ÚextrazEvent ID was %r
)r   ÚstdoutÚwriteÚgetattrZremoteZ	is_activer   Ú
is_enabledÚgetÚflushZcaptureMessageÚloggingÚINFOr   r   )ÚclientÚoptionsÚkZremote_configr"   Úidentr   r   r   Úsend_test_message.   s6    
 



r9   c              C   s  t  d¡} |  t j¡ ttƒ d}|jddtdddd |jd	dtddd
d | ¡ \}}d 	|dd … ¡pvt
j d¡}|s–tdƒ tdƒ t d¡ tdƒ td|ƒ tƒ  t|dgd}t||jƒ t d¡ |j ¡ ròtj d¡ t d¡ tj d¡ d S )Nzsentry.errors)Úversionz--dataÚcallbackÚstringr   r"   )Úactionr;   ÚtypeÚnargsr   z--tagsr'   ú Z
SENTRY_DSNz!Error: No configuration detected!zVYou must either pass a DSN to the command, or set the SENTRY_DSN environment variable.zUsing DSN configuration:Úraven)Zinclude_pathsé   zerror!
z	success!
)r3   Ú	getLoggerÚsetLevelÚDEBUGr   r   Ú
add_optionr   Ú
parse_argsÚjoinr   Úenvironr1   r   r   r   r   r9   Ú__dict__ÚtimeÚsleepÚstateZdid_failr-   r.   )Úrootr   ÚoptsÚargsZdsnr5   r   r   r   ÚmainX   s.    







rQ   )Ú__doc__Ú
__future__r   r   r3   r   r   rK   Úoptparser   rA   r   r   Zraven.utils.jsonr   r   r   r   r9   rQ   r   r   r   r   Ú<module>   s   	*