Ich habe kürzlich ein System zur Automatisierung von Slack-Benachrichtigungen mit Diagrammen entwickelt, die die Sitzungszahlen der letzten 7 Tage visualisieren. Dies wurde durch eine Kombination aus Cloud Run-Funktionen zur Datenverarbeitung und Diagrammerstellung und Cloud Scheduler zur Planung der Ausführung erreicht.
Die Cloud Run-Funktion fragt BigQuery ab, um Sitzungsdaten abzurufen, erstellt mit Matplotlib ein Liniendiagramm und sendet das Diagramm dann über die Slack-API an Slack. Die folgenden Schritte beschreiben den Einrichtungsprozess.
Hier ist der Code für main.py. Vor der Ausführung müssen Sie SLACK_API_TOKEN und SLACK_CHANNEL_ID als Umgebungsvariablen festlegen. Sie können sie vorerst leer lassen, da wir sie später einrichten.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
|
Erstellen Sie eine Datei „requirements.txt“ und schließen Sie die folgenden Abhängigkeiten ein:
1 2 3 4 5 |
|
Damit Cloud Scheduler oder andere Dienste Ihre Cloud Run-Funktion aufrufen können, müssen Sie der entsprechenden Entität die Rolle „roles/run.invoker“ zuweisen. Verwenden Sie dazu den folgenden Befehl:
1 2 3 |
|
Ersetzen Sie MEMBER_NAME durch eines der folgenden:
Verwenden Sie Cloud Scheduler, um die Ausführung der Funktion jeden Montag um 10:00 Uhr (JST) zu automatisieren. Hier ist eine Beispielkonfiguration:
Um Ihre Cloud Run-Funktion zum Senden von Slack-Benachrichtigungen zu aktivieren, befolgen Sie diese Schritte:
Sobald alles eingerichtet ist, erhält Ihr Slack-Kanal eine wöchentliche Benachrichtigung mit einem Diagramm wie diesem:
Das obige ist der detaillierte Inhalt vonAutomatisieren Sie Slack-Benachrichtigungen mit Diagrammen mithilfe von Cloud Run-Funktionen und Cloud Scheduler. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!