Sobes.tech
Intern

რა არის ლოგირება?

sobes.tech AI

პასუხი AI-სგან

პროგრამის ან სისტემის შესრულების დროს მომხდარი მოვლენების შესახებ ინფორმაციის ჩაწერის პროცესი. ეხმარება შეცდომების გამოვლენაში, მონიტორინგში და პროგრამის მუშაობის ანალიზში.

ლოგების ტიპები:

  • ინფორმაციული (info): ზოგადი ინფორმაცია მუშაობის შესახებ.
  • დიბაგი (debug): დეტალური ინფორმაცია შეცდომების გამოსწორებისთვის.
  • გაფრთხილებები (warning): სიტუაციები, რომლებიც შეიძლება გამოიწვიოს პრობლემები.
  • შეცდომები (error): მომხდარი შეცდომები, რომლებიც არ შეჩერებულა მუშაობა.
  • კრიტიკული (critical): შეცდომები, რომლებიც გამოიწვია სისტემის ნაწილობრივი ან სრული გაჩერება.

საშუალებები და მიდგომები:

  • PSR-3 Logger ინტერფეისი - PHP-ის სტანდარტი ლოგერის ინტერფეისისთვის.
  • 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-ის დასრულება');
    }
}