Configuration de la journalisation et de la surveillance PHP

王林
Libérer: 2024-05-01 10:33:01
original
688 Les gens l'ont consulté

La configuration de la journalisation et de la surveillance PHP est essentielle à la stabilité des applications. L'utilisation de Monolog pour enregistrer les événements, de Sentry pour analyser les erreurs et de Prometheus pour surveiller les données métriques permet aux développeurs de diagnostiquer rapidement les problèmes et d'améliorer les performances des applications.

PHP 日志记录和监控的配置

Configuration de la journalisation et de la surveillance PHP

La journalisation et la surveillance sont cruciales pour toute application PHP moderne. En enregistrant les événements, les erreurs et les données de performances, vous pouvez rapidement diagnostiquer les problèmes et améliorer la stabilité des applications.

Utilisation de Monolog

Monolog est une bibliothèque de journalisation PHP populaire qui offre la flexibilité de se connecter à diverses cibles (par exemple, fichiers, bases de données, serveurs de messagerie). La configuration de Monolog est simple :

use Monolog\Logger;
use Monolog\Handler\StreamHandler;

// 创建一个记录器
$logger = new Logger('my_app');

// 创建一个文件处理程序
$streamHandler = new StreamHandler('app.log');

// 将处理程序添加到记录器
$logger->pushHandler($streamHandler);

// 记录一条消息
$logger->info('Application started');
Copier après la connexion

Utilisation de Sentry

Sentry est un service de journalisation et de surveillance géré qui fournit une analyse approfondie des erreurs et des exceptions. Pour utiliser Sentry, vous devez créer un compte et obtenir un DSN :

composer require sentry/sentry
Copier après la connexion

Configuration de Sentry :

use Sentry\ClientBuilder;

// 创建一个 Sentry 客户端
$client = ClientBuilder::create()
    ->setDsn('YOUR_DSN')
    ->build();

// 记录一个异常
try {
    throw new Exception('This is an exception');
} catch (Exception $e) {
    $client->captureException($e);
}
Copier après la connexion

Utilisation de Prometheus

Prometheus est un système de surveillance open source qui vous permet de collecter et de visualiser des données de métriques pour votre application. Pour installer Prometheus, exécutez la commande suivante :

curl -LO https://github.com/prometheus/node_exporter/releases/download/v1.4.0/node_exporter-1.4.0.linux-amd64.tar.gz
tar xzf node_exporter-1.4.0.linux-amd64.tar.gz
Copier après la connexion

Dans votre application PHP, utilisez le SDK PHP Prometheus pour enregistrer les données de métriques :

use Prometheus\CollectorRegistry;
use Prometheus\Gauge;

// 创建一个收集器注册表
$registry = new CollectorRegistry;

// 创建一个度量
$gauge = new Gauge('my_app_requests', 'Number of requests', ['code']);

// 增加度量值
$gauge->inc(['200']);
Copier après la connexion

Affichez les métriques Prometheus en visitant http://localhost:9100/metrics.

Cas pratique

Dans une application de commerce électronique, la configuration suivante peut être utilisée pour enregistrer les erreurs, les événements de performances et les événements commerciaux :

  • Utilisez Monolog pour enregistrer les événements clés de l'application dans un fichier.
  • Utilisez Sentry pour enregistrer et analyser les exceptions.
  • Utilisez Prometheus pour suivre le nombre de demandes d'application, la durée des requêtes de base de données et la durée des appels API.

Ces configurations garantissent la stabilité et les performances des applications et permettent aux développeurs d'identifier et de résoudre rapidement les problèmes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal