Advertencia de falta de SNI al ejecutar un script de Python con la API de Datadog

Advertencia de falta de SNI al ejecutar un script de Python con la API de Datadog

Soy principiante y estoy totalmente estancado en esto. Probé muchas soluciones diferentes pero aún no he podido encontrar ninguna que funcione, ¿podrían ayudarme? :)

Creé una máquina virtual Ubuntu 12.04 con Vagrant en VirtualBox e instalé un agente Datadog en ella. Luego creé un script API de Datadog para crear un tablero de tiempo con diferentes gráficos. Estoy intentando ejecutar el script de Python, pero siempre recibo una advertencia y no obtengo resultados. Como puedes ver aquí:https://docs.datadoghq.com/api/?lang=python#create-a-timeboard Debería poder ver el cronograma en mi panel de Datadog, pero no aparece.

Aquí está el script que creé en /home/datadog:

#!/usr/bin/env python

from datadog import initialize, api

options = {
    'api_key': 'MYAPIKEY',
    'app_key': 'MYAPPKEY'
}

initialize(**options)

title = "Visualizing Data for Barbosa"
description = "Timeboard using Datadog's API"
graphs = [

{
    "definition": {
        "events": [],
        "requests": [
            {"q": "my_metric{host:precise64}"}
        ],
        "viz": "timeseries"
    },
    "title": "My metric scoped over my host"
},

{
    "definition": {
        "events": [],
        "requests": [
            {"q": "anomalies(avg:mysql.performance.cpu_time{host:precise64}, 'robust', 2)"}
        ],
        "viz": "timeseries"
    },
    "title": "Anomalies on MySQL for CPU time"

},

{
    "definition": {
        "events": [],
        "requests": [
            {"q": "avg:ùy_metric{host:precise64}.rollup(sum, 3600)"}
    ],
        "viz": "timeseries"
    },
    "title": "Rollup for My metric over the past hour"

}]

read_only = True
api.Timeboard.create(title=title,
                     description=description,
                     graphs=graphs,
                     read_only=read_only)

Y cuando ejecuto el script usando /home/datadog$ ./timeboard.pyobtengo lo siguiente:

/usr/local/lib/python2.7/dist-packages/urllib3/util/ssl_.py:339: 
SNIMissingWarning: An HTTPS request has been made, but the SNI (Subject Name 
Indication) extension to TLS is not available on this platform. This may 
cause the server to present an incorrect TLS certificate, which can cause 
validation failures. You can upgrade to a newer version of Python to solve 
this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-
usage.html#ssl-warnings.
SNIMissingWarning
/usr/local/lib/python2.7/dist-packages/urllib3/util/ssl_.py:137: 
InsecurePlatformWarning: A true SSLContext object is not available. This 
prevents urllib3 from configuring SSL appropriately and may cause certain 
SSL connections to fail. You can upgrade to a newer version of Python to 
solve this. For more information, see 
https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings.
InsecurePlatformWarning

Intenté actualizar Python pero al ejecutar el código con Python 3, ya no reconoce el paquete Datadog Python (https://github.com/DataDog/datadogpy) y no sé cómo moverlo desde Python 2.7, o si eliminar Python 2.7 causará grandes problemas en mi código/script. ¡Soy un principiante, lo siento si esto es confuso!

También intenté seguirhttps://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warningspero desafortunadamente el comando de importación tampoco funciona, ¿hay algún software/paquete específico que instalar para que funcione?

¿Qué estoy haciendo mal? ¡Gracias!

Respuesta1

La respuesta fue eliminar las advertencias agregando import... directamente en el script de Python, como se explica enesta respuesta en stackoverflow.com.

información relacionada