| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- // package kernel_log -- логгер ядра
- package kernel_log
- import (
- "fmt"
- "sync"
- . "wartank/kernel/kernel_types"
- )
- var блок sync.Mutex
- type Логгер struct {
- префикс string
- }
- func НовЛоггер(префикс string) *Логгер {
- сам := &Логгер{
- префикс: префикс,
- }
- _ = ИЯдроЛог(сам)
- return сам
- }
- // Паника -- проверяет на совпадение условия
- func (сам *Логгер) Паника(условие bool, формат string, аргументы ...interface{}) {
- блок.Lock()
- defer блок.Unlock()
- if условие {
- panic(fmt.Sprintf("ПАНИК "+сам.префикс+"."+формат, аргументы...))
- }
- }
- // Ошибка -- выводит в консоль ошибку
- func (сам *Логгер) Ошибка(формат string, аргументы ...interface{}) {
- блок.Lock()
- defer блок.Unlock()
- fmt.Printf("ОШИБК "+сам.префикс+"."+формат, аргументы...)
- }
- // Отладка -- выводит в консоль отладку
- func (сам *Логгер) Отладка(формат string, аргументы ...interface{}) {
- блок.Lock()
- defer блок.Unlock()
- fmt.Printf("ОТЛАД "+сам.префикс+"."+формат, аргументы...)
- }
- // Инфо -- выводит в консоль информацию
- func (сам *Логгер) Инфо(формат string, аргументы ...interface{}) {
- блок.Lock()
- defer блок.Unlock()
- fmt.Printf("ИНФО "+сам.префикс+"."+формат, аргументы...)
- }
- // Внимание -- выводит в консоль предупреждение
- func (сам *Логгер) Внимание(формат string, аргументы ...interface{}) {
- блок.Lock()
- defer блок.Unlock()
- fmt.Printf("ВНИМА "+сам.префикс+"."+формат, аргументы...)
- }
|