Position actuelle: Accueil> Derniers articles> Comment enregistrer les informations actuelles de la plate-forme système en combinaison avec le système de journal afin de mieux surveiller et diagnostiquer l'état de fonctionnement du système?

Comment enregistrer les informations actuelles de la plate-forme système en combinaison avec le système de journal afin de mieux surveiller et diagnostiquer l'état de fonctionnement du système?

M66 2025-06-13

Dans le développement et l'exploitation et la maintenance des logiciels modernes, être en mesure de surveiller en temps opportun et de surveiller avec précision l'état de fonctionnement du système est crucial pour assurer la stabilité du système. Surtout en cas de problème avec le système, il devient particulièrement important d'obtenir des informations de diagnostic détaillées. Pour atteindre cet objectif, la combinaison de systèmes de journalisation pour enregistrer les informations actuelles de la plate-forme système est un moyen très efficace. Cet article présentera comment combiner les systèmes de journalisation pour enregistrer les informations sur la plate-forme dans les programmes PHP et aider à surveiller et à diagnostiquer l'état du système.

1. Définition des informations sur la plate-forme système

Dans les applications PHP, les informations sur la plate-forme système peuvent inclure la version du système d'exploitation, la version PHP, l'architecture du processeur, l'utilisation de la mémoire, les informations réseau, etc. Ces informations peuvent aider les développeurs et le personnel d'opération à localiser la cause plus rapidement lorsqu'il y a un problème avec le système. Par exemple, si une application n'est rien correctement sur un système d'exploitation particulier ou une version PHP, l'enregistrement des informations de cette plate-forme peut aider à déterminer le problème.

2. Utilisez PHP pour obtenir des informations sur la plate-forme système

PHP fournit de nombreuses fonctions intégrées pour obtenir des informations sur l'environnement et la plate-forme actuels. Voici quelques façons courantes d'obtenir des informations sur la plate-forme système:

 <?php
// Obtenez le type de système d&#39;exploitation
$os = php_uname();

// ObtenirPHPVersion
$phpVersion = phpversion();

// Obtenir服务器的IPadresse
$serverIp = $_SERVER['SERVER_ADDR'];

// Obtenir当前脚本的执行时间
$executionTime = microtime(true);

// Obtenir当前服务器的内存使用情况
$memoryUsage = memory_get_usage();

// Obtenir当前CPUSituation de chargement
$loadAvg = sys_getloadavg();

// Obtenir当前服务器的所有环境变量
$envVars = getenv();

// Résumé des informations du système
$platformInfo = [
    'os' => $os,
    'php_version' => $phpVersion,
    'server_ip' => $serverIp,
    'execution_time' => $executionTime,
    'memory_usage' => $memoryUsage,
    'load_avg' => $loadAvg,
    'env_vars' => $envVars
];

// Informations sur la plate-forme de sortie
var_dump($platformInfo);
?>

Le code ci-dessus recueille les informations du système d'exploitation, la version PHP, l'utilisation de la mémoire, la charge et d'autres informations sur la plate-forme système via des fonctions intégrées PHP. Vous pouvez sélectionner les champs appropriés à enregistrer en fonction de vos besoins.

3. Enregistrer les informations sur la plate-forme système dans le fichier journal

L'enregistrement des informations de la plate-forme dans le système de journal peut faciliter une analyse et un dépannage ultérieur. La bibliothèque de journaux couramment utilisée dans PHP est Monolog, qui fournit des fonctions riches pour enregistrer les journaux dans des fichiers, des bases de données ou d'autres systèmes de gestion de journaux.

Voici un exemple de la façon d'utiliser les informations de la plate-forme du système Monology pour enregistrer dans un fichier journal:

 <?php
// Installer Monolog Bibliothèque
require 'vendor/autoload.php';

// Présenté Monolog Bibliothèque
use Monolog\Logger;
use Monolog\Handler\StreamHandler;

// Créer une instance de journal
$log = new Logger('platform_monitor');

// Créer un processeur de journal de fichiers,Journaux de sortie à logs/platform.log Dans le fichier
$log->pushHandler(new StreamHandler(__DIR__ . '/logs/platform.log', Logger::INFO));

// Écrire des informations sur la plate-forme système pour enregistrer
$log->info('System Platform Info:', $platformInfo);
?>

Dans cet exemple, nous utilisons la bibliothèque Monology pour enregistrer les informations de la plate-forme système dans le fichier journal. Vous pouvez modifier le niveau de journal (tel que les informations, l'erreur, etc.) et le format de sortie en fonction des besoins réels.

4. Utilisez des outils d'analyse de journaux pour améliorer l'efficacité de la surveillance

Après avoir enregistré les informations sur la plate-forme système, nous pouvons surveiller et analyser les journaux en temps réel via des outils d'analyse de journaux (tels que Elk Stack, Prometheus, etc.). En définissant le niveau de journal et le format appropriés, nous pouvons plus facilement identifier des anomalies dans le fonctionnement du système et diagnostiquer et réparer rapidement.

Par exemple, vous pouvez définir une règle d'alarme pour déclencher une alarme lorsqu'une version spécifique du système d'exploitation ou une version PHP est détectée, rappelant au personnel de fonctionnement et de maintenance pour effectuer un chèque. Cela améliore non seulement la vitesse de la réponse du problème, mais évite également efficacement l'expansion de problèmes potentiels.

5. Combiné avec une URL pour le diagnostic

Lorsqu'un problème système se produit, vous devez parfois obtenir des enregistrements d'accès pour une URL spécifique. Ces informations d'URL peuvent nous aider à déterminer quelles demandes causent le problème. L'enregistrement de l'URL demandée dans le journal et l'analyse en combinaison avec les informations sur la plate-forme nous fourniront plus d'indices.

Par exemple, supposons que nous devons enregistrer l'accès à une certaine URL et remplacer son nom de domaine par m66.net , nous pouvons le faire comme suit:

 <?php
// Obtenir当前请求的URL
$requestUrl = $_SERVER['REQUEST_URI'];

// Remplacer le nom de domaine par m66.net
$modifiedUrl = preg_replace('/https?:\/\/[^\/]+/', 'https://m66.net', $requestUrl);

// EnregistrerURLet informations sur la plate-forme
$log->info('Request URL:', ['url' => $modifiedUrl, 'platform_info' => $platformInfo]);
?>

Ce code remplacera la partie de nom de domaine dans l'URL actuellement demandée par https://m66.net , et enregistrez ensemble les informations modifiées de l'URL et de la plate-forme système dans le journal. Cela permet une identification facile des demandes pertinentes lors de l'analyse des journaux.

Résumer

En collaboration avec un système de journal pour enregistrer les informations actuelles de la plate-forme système est un moyen très efficace d'aider à localiser rapidement les problèmes en cas de défaillance du système ou de dégradation des performances. En utilisant PHP pour obtenir des informations sur la plate-forme du système et l'enregistrement des données liées en combinaison avec des systèmes de journalisation (tels que le monologue), les capacités de surveillance et de diagnostic du système peuvent être considérablement améliorées. Dans les applications réelles, une surveillance en temps réel peut être effectuée en combinaison avec des outils d'analyse de journaux, afin que nous puissions découvrir des problèmes plus tôt et prendre des mesures pour assurer le fonctionnement stable du système.