Wo wird die Protokollausgabe von Cloud-Init gespeichert?

16

Woher kommt die Ausgabe von cloud-init (führt automatisch Skripte aus, wenn eine virtuelle Maschine in der Cloud gestartet wird, z. B. bei Amazon EC2)? Ich möchte wissen, dass meine Initialisierungsskripte erfolgreich ausgeführt wurden.

Es gibt eine /var/log/cloud-init.log-Datei, die jedoch nur eine Teilausgabe zu enthalten scheint (nämlich von der SSH-Schlüsselinitialisierung).

Markus Hallmann
quelle

Antworten:

17

Seit cloud-init0.7.5 (veröffentlicht am 1. April 2014) wird die gesamte Ausgabe von cloud-init standardmäßig in erfasst /var/log/cloud-init-output.log. Diese Standardprotokollierungskonfiguration wurde in einem Commit vom 14. Januar 2014 hinzugefügt :

# this tells cloud-init to redirect its stdout and stderr to
# 'tee -a /var/log/cloud-init-output.log' so the user can see output
# there without needing to look on the console.
output: {all: '| tee -a /var/log/cloud-init-output.log'}

Um Unterstützung für frühere Versionen von cloud-inithinzuzufügen, können Sie diese Konfiguration manuell zu Ihren Cloud- Konfigurationsdaten hinzufügen .

pawstrong
quelle
3

Ich konnte keinen "einheimischen" Weg finden, dies zu tun. Bevor ich das Skript an cloud-init weitergebe, habe ich einfach (automatisch) an >> /tmp/init-script-log 2>&1jede Zeile des Skripts ein angehängt , um stout und stderr an eine Datei weiterzuleiten.

Roberto Aloi
quelle
Wie Valko betonte, werden die Ausgaben von Benutzerdatenskripten weder erfasst /var/log/cloud-init.lognoch /var/log/cloud-init-output.logerfasst. Robertos Lösung hier beantwortet dieses Anliegen. Eine andere Möglichkeit, die ich gesehen habe, besteht darin, Ihr Benutzerdatenskript zu exec 1> >(logger -s -t "WhateverNameYouWantToMakeSiftingLogMessagerEasier") 2>&1
präambeln
1

Auf dem von mir verwendeten Centos 7 AMI befindet sich die Ausgabe meines Benutzerdatenskripts in /var/log/cloud-init-output.log.

Rakslice
quelle
0

Auf meiner EC2-Box (mit Amazon Linux AMI) ist sie in /var/log/cloud-init.log gespeichert

Edouard
quelle
2
Danke, aber es scheint keine Ausgabe von Benutzerskripten zu enthalten.
Markus Hallmann
0

Ich habe eine Protokollausgabe in / var / log / messages gefunden (CentOS7 AWS AMI)

mbo
quelle
-4

Zunächst möchte ich Ihnen zu Cloud-Init gratulieren. Es ist ein erstaunliches Tool!

Es gibt noch keine Möglichkeit, eine Protokollebene einzurichten, aber Cloud-Init wird standardmäßig mit aktiviertem DEBUG ausgeführt.

Es befindet sich immer noch in starker Entwicklung, ich erwarte, dass es mit der Veröffentlichung von Ubuntu Natty viel besser wird

Lynxman
quelle