Sobes.tech
Intern

Mis on logimine?

sobes.tech AI

Vastus AI-lt

Protsess teabe registreerimiseks sündmuste kohta, mis toimuvad programmi või süsteemi täitmise ajal. Aitab tõrkeid leida, jälgida ja analüüsida rakenduse tööd.

Logi tüübid:

  • Informatiivsed (info): Üldine teave töö kohta.
  • Silumine (debug): Detailne teave vigade otsimiseks.
  • Hoiatused (warning): Olukorrad, mis võivad põhjustada probleeme.
  • Vead (error): Toimusid vead, mis ei katkestanud täitmist.
  • Kriitilised (critical): Vead, mis põhjustasid osa või kogu süsteemi seiskumise.

Tööriistad ja lähenemised:

  • PSR-3 loggeri liides - PHP standard loggeri liidese jaoks.
  • Monolog - populaarne PHP logimise raamatukogu.
  • Logimine failidesse, andmebaasidesse, välisteenustesse (näiteks Sentry, ELK).

Näide kasutamisest PSR-3-ga:

<?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 algus', ['context_data' => 'väärtus']);
        try {
            // ... täitmise kood
        } catch (\Exception $e) {
            $this->logger->error('Viga doSomething ajal', [
                'exception' => $e,
                'user_id' => 123
            ]);
        }
        $this->logger->debug('doSomething lõpp');
    }
}