Sobes.tech
Intern

Ի՞նչ է լոգավորումը։

sobes.tech AI

Պատասխան AI-ից

Ծրագիր կամ համակարգի գործարկման ժամանակ տեղի ունեցող իրադարձությունների մասին տեղեկատվության գրանցման գործընթացը։ Օգնում է սխալների հայտնաբերման, մոնիտորինգի և ծրագրի աշխատանքի վերլուծության մեջ։

Լոգերի տեսակները՝

  • Տեղեկատվական (info): Ընդհանուր տեղեկություններ աշխատանքի մասին։
  • Դիբագ (debug): Մանրամասն տեղեկություններ սխալների որոնման համար։
  • Զգուշացումներ (warning): Կան իրավիճակներ, որոնք կարող են հանգեցնել խնդիրների։
  • Սխալներ (error): Կատարված սխալներ, որոնք չեն խանգարել գործարկմանը։
  • Կրիտիկական (critical): Սխալներ, որոնք հանգեցրել են համակարգի մասի կամ ամբողջականության կանգնեցմանը։

Աշխատանքային գործիքներ և մոտեցումներ՝

  • PSR-3 Logger ինտերֆեյս - PHP-ի ստանդարտը logger-ի ինտերֆեյսի համար։
  • Monolog - հանրաճանաչ գրառման գրադարան PHP-ում։
  • Գրառումներ ֆայլերում, տվյալների բազաներում, արտաքին ծառայություններում (օրինակ՝ Sentry, ELK)։

Օգտագործման օրինակ PSR-3-ի հետ՝

<?php

use Psr\Log\LoggerInterface;

class MyClass
{
    private LoggerInterface $logger;

    public function __construct(LoggerInterface $logger)
    {
        $this->logger = $logger;
    }

    public function doSomething(): void
    {
        $this->logger->info('doSomething սկսվեց', ['context_data' => 'արժեք']);
        try {
            // ... կատարման կոդ
        } catch (\Exception $e) {
            $this->logger->error('Սխալ doSomething-ի ժամանակ', [
                'exception' => $e,
                'user_id' => 123
            ]);
        }
        $this->logger->debug('doSomething ավարտվեց');
    }
}