READ-Zugriff auf die Logs für den Agent-Benutzer auf dem Host erteilen
Stellen sie beim Deployment der Management-Agents zur Verwendung von "Oracle Log Analytics" auf UNIX-basierten Hosts sicher, dass der Management-Agent über die Berechtigungen zum Lesen der Logdateien verfügt, aus denen Daten erfasst werden sollen.
Auf Unix-basierten Hosts ist der Benutzer, der Management Agent installiert, mgmt_agent für den manuell installierten Management Agent und oracle-cloud-agent, wenn der Management Agent ein Plug-in ist, das mit Oracle Cloud Agent aktiviert ist.
Prüfen Sie die Dateiberechtigung für die Logdatei und die einzelnen Ordner im Dateipfad mit dem Management Agent-Benutzer: Wenn sich Ihre Logdatei unter /a/b/c/file.log
befindet, müssen Sie die Leseberechtigung für die Logdatei file.log
sowie die Ordner a
, b
und c
im Dateipfad prüfen.
sudo -u <agentuser> /bin/bash -c "ls /a"
sudo -u <agentuser> /bin/bash -c "ls /a/b"
sudo -u <agentuser> /bin/bash -c "ls /a/b/c"
sudo -u <agentuser> /bin/bash -c "tail /a/b/c/file.log"
Wenn der Management Agent-Benutzer die Logdateien nicht lesen kann, verwenden Sie eine der folgenden Methoden (in Best-Practice-Reihenfolge), um die Logdateien für den Management Agent lesbar zu machen. Es wird empfohlen, jede Methode in der aufgeführten Reihenfolge auszuprobieren und zu prüfen, ob der Zugriff verfügbar ist, bevor Sie die nächste versuchen.
-
Verwenden Sie Access-Control-Listen (ACLs), um dem Cloud-Agent-Benutzer das Lesen des Logdateipfades und der Logdateien zu gewähren. Eine ACL stellt einen flexiblen Berechtigungsmechanismus für Dateisysteme bereit. Stellen Sie sicher, dass der vollständige Pfad zu den Logdateien über die ACL gelesen werden kann.
So richten Sie eine ACL auf einem UNIX-basierten Host ein:
Bestimmen Sie, ob das System, das die Logdateien enthält, das Package
acl
enthält:rpm -q acl
Wenn das System das Package
acl
enthält, sollte der vorherige Befehl Folgendes zurückgeben:acl-2.2.39-8.el5
Wenn das System nicht über das Package
acl
verfügt, laden Sie das Package herunter, und installieren Sie es. -
Führen Sie die folgenden
setfacl
-Befehle aus:Hinweis
Prüfen Sie zunächst, ob die Berechtigungen vorhanden sind, und fügen Sie sie bei Bedarf hinzu. Stellen Sie sicher, dass die Änderungen keine Auswirkungen auf die vorhandenen haben.-
Erteilen Sie dem Management Agent-Benutzer READ-Zugriff auf die erforderliche Logdatei:
setfacl -m u:<agentuser>:r <path to the log file/log file name>
-
Erteilen Sie den READ- und EXECUTE-Berechtigungen für jeden Ordner im Logdateipfad:
//set read, execute permissions on folders other than parent folder setfacl -m u:<agentuser>:rx <path to the folder> //set read, execute permissions with recursive options on parent folder setfacl -R -m u:<agentuser>:rx <path to the folder> //set read, execute permissions with default option to allow all future log files created under this folder to be readable. setfacl -d -m u:<agentuser>:rx <path to the folder>
Beispiel: Die folgenden Befehle sind für den Pfad
/scratch/logs/*.log
für den Management Agent-Benutzermgmt_agent
erforderlich:setfacl -m u:mgmt_agent:rx /scratch setfacl -R -m u:mgmt_agent:rx /scratch/logs setfacl -d -m u:mgmt_agent:rx /scratch/logs
Für nfs mount können dem Agent-Benutzer möglicherweise keine READ- und EXECUTE-Berechtigungen zum Lesen der Protokolldateien oder Ordner erteilt werden. Fügen Sie in diesen Fällen den Agent-Benutzer zur Logdateigruppe hinzu:
usermod -a -G <group of log file> <agentuser>
Starten Sie den Management Agent neu, nachdem Sie den obigen Befehl ausgeführt haben.
-
-
Platzieren Sie den Management Agent und das Produkt, das die Logs generiert, in derselben Benutzergruppe, und machen Sie die Dateien für die gesamte Gruppe lesbar. Starten Sie den Agent neu.
-
Machen Sie die Logdateien für alle Benutzer lesbar. Beispiel:
chmod o+r <file>
.Möglicherweise müssen Sie den übergeordneten Ordnern ausführbare Berechtigungen erteilen. Beispiel:
chmod o+rx <parent folder>
.