SNI-Warnung fehlt beim Ausführen eines Python-Skripts mit der Datadog-API

SNI-Warnung fehlt beim Ausführen eines Python-Skripts mit der Datadog-API

Ich bin Anfänger und komme bei diesem Thema überhaupt nicht weiter. Ich habe viele verschiedene Lösungen ausprobiert, aber noch keine gefunden, die funktioniert. Können Sie mir helfen? :)

Ich habe eine Ubuntu 12.04 VM mit Vagrant auf VirtualBox erstellt und einen Datadog-Agenten darauf installiert. Anschließend habe ich ein Datadog-API-Skript erstellt, um eine Zeitleiste mit verschiedenen Diagrammen zu erstellen. Ich versuche, das Python-Skript auszuführen, erhalte aber jedes Mal eine Warnung und keine Ergebnisse. Wie Sie hier sehen können:https://docs.datadoghq.com/api/?lang=python#create-a-timeboard Ich sollte die Zeitleiste in meinem Datadog-Dashboard sehen können, aber sie wird nicht angezeigt.

Hier ist das Skript, das ich in /home/datadog erstellt habe:

#!/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)

Und wenn ich das Skript ausführe, /home/datadog$ ./timeboard.pyerhalte ich Folgendes:

/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

Ich habe versucht, Python zu aktualisieren, aber wenn ich den Code mit Python 3 ausführe, erkennt es das Datadog-Python-Paket nicht mehr (https://github.com/DataDog/datadogpy) und ich weiß nicht, wie ich es von Python 2.7 verschieben kann oder ob das Löschen von Python 2.7 große Probleme in meinem Code/Skript verursachen wird. Ich bin ein Anfänger, also entschuldigen Sie, wenn das verwirrend ist!

Ich habe auch versucht,https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warningsaber leider funktioniert der Importbefehl auch nicht. Muss eine bestimmte Software/ein bestimmtes Paket installiert werden, damit es funktioniert?

Was mache ich falsch? Danke!

Antwort1

Die Antwort bestand darin, die Warnungen zu entfernen, indem import... direkt im Python-Skript hinzugefügt wurde, wie indiese Antwort auf stackoverflow.com.

verwandte Informationen