Предупреждение об отсутствии SNI при выполнении скрипта Python с API Datadog

Предупреждение об отсутствии SNI при выполнении скрипта Python с API Datadog

Я новичок и полностью застрял на этом. Я перепробовал много разных решений, но пока не смог найти работающее, можете ли вы мне помочь? :)

Я создал виртуальную машину Ubuntu 12.04 с Vagrant на VirtualBox и установил на нее агент Datadog. Затем я создал скрипт API Datadog для создания временной шкалы с различными графиками. Я пытаюсь выполнить скрипт Python, но каждый раз получаю предупреждение и никаких результатов. Как вы можете видеть здесь:https://docs.datadoghq.com/api/?lang=python#create-a-timeboard Я должен видеть табло времени на панели инструментов Datadog, но оно не отображается.

Вот скрипт, который я создал в /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)

И когда я запускаю скрипт с помощью, /home/datadog$ ./timeboard.pyя получаю следующее:

/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

Я попробовал обновить Python, но при выполнении кода с Python 3 он больше не распознает пакет Python Datadog (https://github.com/DataDog/datadogpy) и я не знаю, как перенести его из Python 2.7, или удаление Python 2.7 вызовет огромные проблемы в моем коде/скрипте. Я новичок, так что извините, если это сбивает с толку!

Я также попробовал следоватьhttps://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warningsно, к сожалению, команда импорта тоже не работает. Есть ли специальное программное обеспечение/пакет, который нужно установить, чтобы она заработала?

Что я делаю не так? Спасибо!

решение1

Решением было удалить предупреждения, добавив import... непосредственно в скрипт Python, как описано вэтот ответ на stackoverflow.com.

Связанный контент