AWS CloudWatch · 5 min read · Dec 02, 2025
So senden Sie Linux-Anwendungsprotokolle an AWS CloudWatch

AWS CloudWatch ist ein Überwachungsdienst, der von der AWS-Cloud bereitgestellt wird. AWS bietet eine Standardüberwachung für Serverparameter wie CPU-Auslastung, Netzwerk-Eingang, Netzwerk-Ausgang usw. AWS CloudWatch kann für die benutzerdefinierte Überwachung wie Festplattenspeicher und Speicher (RAM) verwendet werden. Für die benutzerdefinierte Überwachung müssen wir einige Schritte befolgen, um sie zu überwachen.
Auf die gleiche Weise kann AWS CloudWatch verwendet werden, um die Protokolle von Servern oder Anwendungen zu überwachen. Da dies aus offensichtlichen Gründen keine Standardfunktion von AWS ist, können wir es gemäß unseren Anforderungen konfigurieren. Es hängt vom Benutzer ab, welche Protokolle wir an AWS CloudWatch zur Überwachung senden müssen.
Nicht nur auf AWS-Ressourcen beschränkt
Auch wenn AWS CloudWatch ein AWS-Dienst ist, bedeutet das nicht, dass er nur für die EC2-Instanzen verwendet werden kann. Er kann auch konfiguriert werden, um Anwendungs- oder Serverprotokolle von VMs anderer Cloud-Anbieter und auch von VMs auf der physischen Festplatte zu senden.
So senden Sie Anwendungs- oder Serverprotokolle an AWS CloudWatch
Um die Anwendungs- oder Serverprotokolle an AWS CloudWatch zu senden, müssen wir den CloudWatch-Agenten auf dem jeweiligen Server installieren. Wir werden die AWS EC2-Instanz verwenden, um unser Ziel in diesem Blog zu erreichen.
Schritte
- Angemessene Rolle an die Instanz anhängen, um mit AWS CloudWatch zu kommunizieren
- Installation des AWS CloudWatch-Agenten
- Konfiguration des AWS CloudWatch-Agenten
- Testen der Protokolle im AWS CloudWatch-Portal
IAM-Rolle
Um die Anwendungs- oder Serverprotokolle an AWS CloudWatch zu senden, müssen wir eine Rolle an die EC2-Instanz mit den entsprechenden Berechtigungen anhängen. Die Rolle ermöglicht Änderungen in AWS CloudWatch.
Sie sollte die folgenden Richtlinien enthalten.
- CreateLogStream
- DescribeLogStream
- CreateLogGroup
- PutLogEvents
Lassen Sie uns eine Rolle in AWS IAM erstellen.
Gehen Sie im AWS-Console zu dem IAM-Bereich aus der Liste der Dienste. Wenn Sie noch kein AWS-Konto haben, erstellen Sie eines von hier.

Gehen Sie im IAM-Dashboard zu Richtlinie und dann zu Richtlinie erstellen.

Wählen Sie auf der Seite „Richtlinie erstellen“ die Registerkarte „JSON“ aus und fügen Sie die folgende JSON-Richtlinie ein, indem Sie die Standardrichtlinie entfernen.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents",
"logs:DescribeLogStreams"
],
"Resource": [
"arn:aws:logs:*:*:*"
]
}
]
}Ihre Richtlinie sollte wie folgt aussehen. Sobald Sie fertig sind, klicken Sie auf die Schaltfläche „Richtlinie überprüfen“ am unteren Rand der Seite.

Auf der nächsten Seite müssen Sie der Richtlinie einen Namen geben.

Sobald Sie fertig sind, klicken Sie auf die Schaltfläche „Richtlinie erstellen“ am unteren Rand der Seite.
Nachdem Sie eine Richtlinie erstellt haben, werden Sie zur IAM-Rollenseite weitergeleitet. Da wir die erforderliche Richtlinie bereits erstellt haben, werden wir eine Rolle erstellen, die an die Instanz angehängt wird.

Wählen Sie auf der Seite „Rolle erstellen“ „EC2“ aus. Da wir die Rolle an die EC2-Instanz anhängen werden.

Klicken Sie auf die Schaltfläche „Weiter: Berechtigungen“ unten links auf der Seite.
Auf der nächsten Seite werden Sie aufgefordert, eine Richtlinie an die Rolle anzuhängen. Suchen Sie den Namen der Richtlinie, die Sie im vorherigen Schritt angegeben haben. Sobald Sie sie gefunden haben, wählen Sie die Richtlinie aus der Liste aus.

Sobald Sie fertig sind, klicken Sie auf die Schaltfläche „Weiter: Tags“ am unteren Rand der Seite.
Auf der nächsten Seite werden Sie aufgefordert, der Rolle einige Tags zu geben. Da dies ein optionaler Schritt ist, gebe ich der Rolle keinen Tag und überspringe den Schritt.
Sobald Sie auf „Weiter“ klicken, werden Sie aufgefordert, der Rolle einen Namen zu geben.

Ihre Rolle wird in wenigen Sekunden erstellt.
Jetzt, da wir die erforderliche Einrichtung von der Infrastrukturseite abgeschlossen haben, lassen Sie uns den AWS CloudWatch-Agenten auf der EC2-Instanz konfigurieren.
Für diesen Schritt benötigen Sie eine EC2-Instanz im laufenden Zustand. Verbinden Sie sich mit der Instanz, wie Sie möchten. Es gibt mehrere Möglichkeiten, sich mit der Instanz zu verbinden. Sie können sie hier überprüfen.
Wenn Sie eine Amazon Linux-Instanz haben, folgen Sie den unten genannten Schritten.
Wenn Sie sich zum ersten Mal auf der Instanz anmelden, stellen Sie sicher, dass Sie den folgenden Aktualisierungsbefehl ausführen.
Die folgenden Schritte können Sie für Amazon Linux-Maschinen befolgen.
sudo yum update -ySobald das Update abgeschlossen ist, führen Sie den folgenden Befehl aus, um das awslogs-Paket zu installieren.
sudo yum install -y awslogsSobald das Paket installiert ist, können Sie die Region in der /etc/awslogs/awscli.conf-Datei ändern.
Um die Protokolle zu konfigurieren, die Sie an AWS CloudWatch senden möchten, öffnen Sie die Datei /etc/awslogs/awslogs.conf und überprüfen Sie die folgenden Zeilen.
[/var/log/messages]
datetime_format = %b %d %H:%M:%S
file = /var/log/messages
buffer_duration = 5000
log_stream_name = {instance_id}
initial_position = start_of_file
log_group_name = Amazon-Linux-2Die obige Konfiguration zeigt an, dass der Protokolldateipfad von Ihrem System /var/log/messages an AWS CloudWatch hochgeladen wird. Die obige Konfiguration erstellt eine Protokollgruppe in AWS CloudWatch mit dem Namen, der im log_group_name-Parameter angegeben ist. Außerdem wird sie die im log_stream_name angegebene Hierarchie haben. Für die Pufferzeit können wir den Wert von buffer_duration ändern. Der Standardwert für buffer_duration beträgt 5000 ms.
Sobald Sie die Änderungen vorgenommen haben, starten Sie die Anwendung, indem Sie den folgenden Befehl ausführen. Dadurch wird die awslog-Anwendung neu gestartet und der Agent beginnt, die Protokolle an AWS CloudWatch hochzuladen.
$ sudo service awslogsd startUm den AWS CloudWatch-Agenten auf RHEL oder CentOS zu installieren und zu konfigurieren, können Sie die folgenden Schritte befolgen.
Führen Sie den folgenden Befehl aus, um das Paket herunterzuladen.
curl https://s3.amazonaws.com/aws-cloudwatch/downloads/latest/awslogs-agent-setup.py -OSie finden eine Datei mit dem Namen awslogs-agent-setup.py im aktuellen Verzeichnis. Da die heruntergeladene Datei ein Python-Skript ist, müssen Sie Python auf Ihrem Computer installiert haben, um den nächsten Schritt auszuführen. Stellen Sie sicher, dass Sie ein Python-Paket installiert haben, und führen Sie dann den folgenden Befehl aus. Sie müssen die Region im folgenden Befehl angeben. Sie können dies später auch in der Konfiguration ändern, wenn Sie möchten.
python ./awslogs-agent-setup.py --region ap-south-1Sobald Sie den obigen Befehl ausführen, werden Sie nach einigen Eingaben gefragt. Geben Sie diese gemäß den Anforderungen an.

Das obige Skript generiert die Konfigurationsdatei /var/awslogs/etc/awslogs.conf . Die Details, die Sie im Skript angegeben haben, werden in der Konfigurationsdatei gespeichert.
Sie können die Konfigurationsdatei weiterhin nach Ihren Anforderungen ändern.
Sobald Sie alle Änderungen vorgenommen haben, starten Sie den Agenten, indem Sie den folgenden Befehl ausführen.
# systemctl start awslogsÜberprüfen der konfigurierten Einrichtung
Melden Sie sich erneut bei Ihrem AWS-Konto an.
Suchen Sie in der Liste der Dienste nach CloudWatch.
Wählen Sie die Option Log Group aus den linken Seitenmenüs.
Suchen Sie den Wert, den Sie im log_stram_name-Parameter in der Konfiguration angegeben haben.
Sie werden sehen, dass die Protokolle vom Server an AWS CloudWatch übertragen werden.
Fazit
Sie können jede Protokolldatei von Ihrem Server so einrichten, dass sie an AWS CloudWatch übertragen wird. Dies kann für Server konfiguriert werden, die sich nicht in der AWS-Cloud befinden. Das bedeutet, dass Sie die Protokolle von einem Ihrer Server, die auf Azure, GCP oder einem anderen Cloud-Anbieter oder sogar von einem lokalen Server gehostet werden, übertragen können.
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.