Ако в отговор на някакво събитие програмата добавя записи към файл, обикновено идентифицирайки събитието и неговия източник, тогава такъв файл се нарича лог файл. Възможни източници на събития:

  • Резултат от определени потребителски действия.
  • Прекъсвания, идващи в програмата от оборудването.
  • Събития, генерирани от самите програми (например получени в резултат на изчисления).
  • Събития, генерирани от софтуерни грешки (така наречените „изключения“).
  • Събития от операционната система или друга програма, както и събития от всеки друг източник.

С една дума, говорим за промяна на състоянията в работеща и работеща програма. Най-простият вариантлог файл - нормално текстов файлс редови записи. Цялата информация в регистрационните файлове се записва в определен формат, което дава възможност по-късно да се разберат причините за събитията.

Къде се използват регистрационни файлове?

Списъкът с приложения на лог файлове е огромен. файлове от този типсе използват навсякъде, където е необходимо да се проследи историята на конкретен програмен процес, да се регистрира състоянието на устройствата и машините, да се следят действията на потребителите, вкл. и за целите на сигурността. И в много други случаи. За търсене и анализ на данни в лог файлове, като правило, независим софтуер, което ви позволява бързо и визуално да изучавате записаните данни за работата софтуерна система. Много регистрационни файлове са много големи, така че или трябва редовно да презаписвате остарялото им съдържание, или да създавате цели колекции от регистрационни файлове с имена, които включват, например, датата. В много случаи базите данни са предпочитани пред регистрационните файлове.

Полезни примери

Нека дадем няколко примера за използването на лог файлове. Ако има много неочаквани изключения в програмата, която се отстранява, тогава е напълно възможно да ги запишете в лог файл за последващ анализ на грешката. Като друг пример можете да посочите регистрирането на данни за свързани потребители в многопотребителски клиент-сървър системи. Това ви позволява да проследявате неоторизираните операции, които извършват.

Логирането помага на разработчика в процеса на създаване и последваща поддръжка на приложението, при намиране на грешки в кода и при разрешаване на неразбираеми ситуации, когато нашето приложение се държи по странен начин по време на работа и трябва да намерим причината за това поведение.

Всеки разработчик е изправен пред подобни ситуации, когато някой компонент на приложението работи по странен начин, дава грешен резултат или спира да работи напълно. Използването на регистрационни файлове ще ни помогне в ситуации като тази. Времето за търсене на проблемни области в нашия код ще бъде значително намалено и ще можем да решим този или онзи проблем по-бързо.

Като цяло, в момента нито едно повече или по-малко сериозно приложение не може да мине без писане на журнали.

дневник (дневник)е специален журнал, който съхранява информация за състоянието на приложението (програмата).

Такъв журнал може да се разбира като записи в обикновен текстов файл и записи в база данни, и записи в отдалечена уеб услуга и дори имейли до конкретен адрес за определени състояния на нашето приложение.

Какви записи да направите в този дневник, тоест каква конкретна информация да запишете, се определя от самия разработчик. Това може да е информация, че всичко работи както обикновено, тоест само ежедневно наблюдение на нашето приложение или че е възникнала някаква грешка, на която трябва да се реагира и отстрани възможно най-скоро и т.н.

Общо има шест нива на регистриране, всяко от които е предназначено за съобщения от един или друг тип, с една или друга важност:

Проследяване - най-подробната информация за това какво се случва с секцията с целевия код, стъпка по стъпка. Например: Опит за отваряне на връзка с база данни, успешен/неуспешен. Колко време отне тази операция? Колко дълго беше изборът от базата данни, успешен\неуспешен. Колко записа са извлечени. Какво е натоварването на системата, колко памет е използвана. Колко записа преминаха необходимото филтриране. Колко записа са се появили в резултантната селекция, къде отиват тези записи след това. Проверка на желаните стойности във всеки запис.

Debug е информация за отстраняване на грешки. Регистриране на големи операции, по-малко подробно, отколкото в Trace. Тук не описваме целия процес на операцията толкова подробно, но въпреки това регистрираме основните операции. Например: Направена е заявка към базата данни. N записа са избрани от базата данни. Записите са успешно обработени и изпратени на клиента.

Информация - това са по-общи информационни съобщения за текущата работа на приложението, какво се случва със системата в процеса на използването му. Например: Студентите бяха качени във файл на Excel. Нов студент се е регистрирал в сайта. Студентът добави нов отчет. Ученикът е преместен в друга група.

Предупреждение - съобщения за странно или подозрително поведение на приложението. Това все още не е сериозна грешка, но трябва да обърнете внимание на това поведение на системата. Например: Добавен е ученик на възраст 2 години. Ученикът получи отрицателна оценка. Учителят е завършил курс с 0 студенти. В групата има повече ученици от максимално възможния.

Грешка - съобщения за грешка в приложението. Такива съобщения вече са голям проблем, който трябва да бъде решен за по-нататък правилна работасистеми. Например: Грешка при запазване на нов ученик в базата данни. Не може да се заредят ученици в тази група. Грешка при вписване Лична зонастудент.

Fatal - съобщения за много сериозни грешки в системата. Най-често това се дължи на изправността на цялото приложение или неговата среда на сървъра. На такива съобщения трябва да се отговаря възможно най-бързо. Например: Приложението постоянно се презарежда поради липса на памет или място на твърдия диск. Приложението е прекратено по неизвестна причина. Няма достъп до базата данни. Няма достъп до мрежата. Някой порт е блокиран.

Тоест, преди да изпратим съобщение в дневника, трябва да го припишем към определена група.

Например, ние сме написали нова функционалност и искаме да я тестваме, как работи правилно и бързо. За да направим това, ще използваме типа съобщение Trace, тоест всички наши съобщения в дневника ще бъдат маркирани като Trace.

По подобен начин можем да опишем как работи нашето приложение като цяло, съобщенията ще бъдат обозначени с информация.

Ако хвърлим изключение в опасни части от кода, тогава сега също ще добавим запис в дневника, отбелязан с грешка.

Самият разработчик решава към коя група да припише това или онова съобщение. Към този въпрос трябва да се подходи с най-голяма сериозност. Очевидно грешките не трябва да се маркират като информация, грешките не трябва да се игнорират и просто да не се регистрират. Лесната поддръжка на цялата система, бързата реакция при грешки и времето, изразходвано за отстраняване на неизправности, ще зависят от правилно конфигурирана система за регистриране.

Понякога разработчиците са твърде мързеливи, за да пишат журнали, те не искат да отделят време за това. В бъдеще се оказва, че времето, изразходвано за намиране и коригиране на грешки, е многократно повече от времето, необходимо за създаване на система от логове.

Разбира се, много зависи от сложността на проекта. Ако създавате прост сайт с визитки от три страници или конзолно приложение за вашите собствени нужди на вашия локален компютър, тогава писането на сложна система за регистриране може да отнеме повече време от създаването на самия проект. В този случай в регистрационните файлове могат да се записват само съобщения за грешка или защо сайтът се е сбил. Но ако работите върху сложен проект в екип с други разработчици, тогава правилното логване е задължително.

За да започнем регистриране, ще свържем платформата NLog към нашия проект. Възможно е .

  • $(базиран адрес)- основната директория на нашето приложение
  • $ (кратка дата) - Текущата датавъв формат гггг-ММ-дд
  • $(дълга дата)- текуща дата във формат гггг-ММ-дд ЧЧ:мм:сс.ffff
  • $(сайт за повикване)- местоположение на повикване в журнала (име на клас, име на метод)
  • $(главни букви:$(ниво)- ниво на регистриране
  • $(съобщение)- директно съобщението, което ще бъде записано в дневника
  • $(нов ред)- знак за нов ред

Публичен клас StudentsRepository ( private static Logger logger = LogManager.GetCurrentClassLogger(); //... )

Най-често трябва да се декларира един статичен регистратор в целия клас. Ето ни чрез класния ръководител лог мениджъробяви нов логър, с който ще работим.

Нека започнем да регистрираме от ниво Trace. В метода, при който избираме студент по неговия ID, нека опишем как се случва това възможно най-подробно:

Public Student GetStudentById(int id) ( //тук се симулира ситуацията на реална селекция на студент от базата данни... logger.Trace("Искан идентификатор на студент: " + id); logger.Trace("Опитвам се за свързване към източника на данни"); logger .Trace("Връзката към източника на данни беше успешна. Изминало време(ms): " + нов TimeSpan(0, 0, 0, 0, 20).Milliseconds); var student = _studentsList.FirstOrDefault (x => x.Id = = id); logger.Trace("Вземането на проби беше успешно. Студент с id==" + student.Id); връщане на студент; )

Забележете, че извикваме метода Trace() на обекта logger. Има съответното значение - регистриране на съобщения от тип Trace. Ако се обърнем към дефиницията на класа Logger, можем да открием, че има и други методи за всички нива на журнала, които ще използваме по-нататък.

Сега нека добавим някои съобщения на ниво Debug. Както си спомняме, това също е информация за отстраняване на грешки, но по-малко подробна. Този подходизползваме в друг метод, за яснота:

публичен списък GetStudents() ( //това симулира ситуацията на реална селекция от студенти от базата данни... logger.Debug("Свързан с базата данни"); logger.Debug("Извлечени всички студенти"); return _studentsList; )

Отиваме по-нататък. На ниво информация ние описваме редовните операции в нашето приложение, т.е. издигаме се едно ниво по-високо. Да кажем, че работим върху ASP.NET MVC приложение и имаме действие в контролер, което извиква метода GetStudentById(), описан по-рано:

Public ActionResult GetStudent(int id) ( logger.Info("Учителят поиска ученик с id == " + id); StudentsRepository repository = new StudentsRepository(); Student student = repository.GetStudentById(id); return View(student); )

Сега нека добавим съобщения на ниво предупреждение към регистрационните файлове. Както си спомняме, на това ниво на регистриране ние описваме всички потенциално опасни ситуации, странно и нелогично поведение на компоненти. Ще регистрираме запис, ако ученикът е под 15 години:

//... Студент студент = repository.GetStudentById(id); logger.Trace("Извадката беше успешна. Избраният студент с id==" + student.Id); ако (студент. Възраст< 15) logger.Warn("Выбран студент моложе 15 лет"); //...

Var student = _studentsList.FirstOrDefault(x => x.Id == id); if (student == null) logger.Error("Грешка. Не е намерен ученик с id == " + id); logger.Trace("Извадката беше успешна. Избраният студент с id==" + student.Id); ако (студент. Възраст< 15) logger.Warn("Выбран студент моложе 15 лет");

Сега нека определим какво трябва да запишем на Fatal ниво. В нашия най-прост пример просто ще симулираме подобна ситуация:

//... logger.Fatal("Максималният лимит за използване на приложението е достигнат оперативна памет 90%"); //...

Прегледахме всичките шест нива на регистриране и описахме процеса на нашето приложение възможно най-подробно. Сега можем незабавно да анализираме работата на сайта, просто като прегледаме регистрационните файлове, а не разглеждаме изходния код.

Ето как работи записването. В най-простия ни пример, където симулираме работа с ученици, всичко е изключително ясно и прозрачно дори без логове. Но в сложните проекти дърводобивът е неразделна част от разработката.

Разбира се, това са далеч от пълните възможности за персонализиране на платформата NLog. AT конфигурационен файлможете да конфигурирате регистриране на други места, например в база данни, в конзолата, в RAM, да изпращате като имейл съобщение, да изпращате съобщения по мрежата и т.н. Можете също да настроите филтриране на съобщения, по-сложен шаблон за съобщения. Ако не сте доволни от стандартната функционалност на регистратора, тогава можете да напишете свое собствено разширение и да го свържете.

Това е всичко тук, нека обобщим малко. Изучихме темата за влизане в приложението. Разгледахме как правилно да регистрираме определени части от кода, а също така се запознахме с една от най-популярните платформи за регистриране - това е платформата NLog, също разгледахме нейните възможности и как можете да конфигурирате генерирането на регистрационни файлове на тази платформа.

В допълнение към стандартната статистика на сайта, която включва броя на уникални посетители, отворени страниции много други полезна информация, уеб администраторът трябва да знае много други неща за такъв сайт и това е, което регистрационните файлове му разкриват. В същото време начинаещите уебмастъри често дори не знаят какво е дневник и какво дава.

Каква информация е необходима?

Както бе споменато по-горе, в допълнение към стандартните параметри, собственикът на сайта трябва да знае много други данни:

  • Кои страници са най-посещавани.
  • Какви заявки за търсене е най-вероятно да доведат потребителите до вашия сайт.
  • Какви браузъри или операционни системи са най-търсени сред посетителите.
  • Каква резолюция на екрана използват най-много посетителите.
  • И още много.

Как да разберем?

В по-голямата част от случаите платен или безплатен брояч е инсталиран на сайтове, докато ресурсът, който го предоставя, извършва задълбочен анализ на сайта и поддържа статистика на посещенията, която може да бъде прегледана по всяко време. Използването на такива броячи е особено търсено, ако човек хоства свой собствен уебсайт на безплатен хостинг. Като се има предвид какво е дневник, важно е да се научите как да работите с такива броячи, тъй като всъщност те включват повечето от необходимите данни.

Преобладаващата част от хостинг доставчиците, които предоставят платен хостинг, първоначално предоставят на своите клиенти възможност да използват инструментите за анализ, които вече са инсталирани в създадения сайт. Например сървърите на Apache използват специализирана помощна програма, наречена Webalizer, която се използва като допълнителен сървърен модул.

Тези, които използват платен хостинг, също могат да обработват всички данни относно своя сайт напълно независимо, тъй като уебмастърът, който знае какво представлява дневникът на сайта и как да го използва, има пълен достъпдо цялата информация, от която се нуждаете.

Какво е това?

Всеки сайт поддържа свой собствен дневник, който уеб администраторът може да прегледа по всяко време, удобно за него. Какво е лог? Това е отделен текстов файл, който съдържа информация относно всички заявки към сайта, както и различни грешки, свързани с тези заявки.

Как се записват данните в дневника?

Първоначално потребителят въвежда в собствения си браузър адреса на определен сайт и отива на него. След това браузърът на потребителя започва да изпраща на сървъра, на който се намира този сайт, заявка за издаване на уеб страницата, която представлява интерес за потребителя. Заедно с това на сървъра се предоставя следната информация:

  • IP адрес на посетителя.
  • Точното време, когато е направена заявката.
  • Браузърът, който потребителят използва.
  • Операционната система, която потребителят използва.
  • Интересна страница.
  • Адресът на страницата, от която е направен преходът към целта.

След това сървърът изпраща заявка, която представлява интерес за посетителя, и цялата информация относно транзакцията се записва в регистъра на събитията, създавайки така наречения лог файл.

Компетентният анализ на регистрационните файлове на сайта позволява на уеб администратора да определи как точно се използва неговият ресурс и в каква посока е по-уместно да се развива.

Каква информация дават регистрационните файлове?

Разглеждайки регистрационните файлове на сайта, можете да намерите голямо количествополезна информация, която ще подобри по-нататъшното популяризиране на ресурса и ще го направи по-ефективен:

  • Посещаемост. Разбира се, такъв индикатор се определя и от стандартен брояч, който може да присъства на всяка страница, но в дневника тези данни се предоставят по-подробно, включително трафик по ден, час или месец. Също така, с помощта на регистрационни файлове можете да определите часовете на скок или затишие в трафика, което е изключително важно да знаете, когато поддържате сайт.
  • Трафик. В този случай, както трафикът на всяка отделна страница, така и общият трафик на сайта за определен периодвреме.
  • Преобразуване.Този параметър ви позволява да определите как посетителите се движат през вашия ресурс, тоест те са прегледали една страница и са затворили или въпреки това са започнали да „пътуват“ през вашия сайт, преглеждайки една страница след друга. Процентът на реализация ви позволява индиректно да определите качеството на вашия сайт.
  • изоставени страници.Като се има предвид какви са регистрационните файлове на сървъра, често можете да определите, че те съдържат изоставени страници, тоест такива, които се посещават изключително рядко. В такава ситуация уеб администраторът трябва да извърши задълбочен анализ на ситуацията, защото може да се окаже, че страниците са престанали да интересуват хората или е станало трудно да ги намерите сред многото други на вашия сайт.
  • Популярни страници.Уеб страници, които са най-посещавани. Можете да ги използвате като шаблон в процеса на създаване на други страници и ако е необходимо, можете също да насочите потребителите от тези страници към някои други, които са изоставени или по-малко популярни.
  • Заявки за търсене.Освен всичко друго, регистрационните файлове на сайта също съдържат ефективността на тези мета тагове, ключови думии имената на уеб страниците, които сте използвали и за които вашият сайт може да бъде намерен от някои търсачки. Съответно регистрационните файлове съдържат данни за това коя конкретна търсачка е намерила вашия сайт за конкретна заявка.

Инструкция

В свойствата на менюто "Моят компютър" изберете елемента, отговорен за управлението. На операционни системи Seven и Windows VistaТози елемент е посочен от лявата страна на лентата с менюта Моят компютър. Също така можете да бягате това менюот "Администрация" в контролния панел. Трябва да видите на екрана си специална конзолауправление.

Когато работите с лог файлове, не забравяйте да обърнете внимание на ограниченията сметка, тъй като всички действия трябва да се извършват само от администратора. Гости и други ограничени акаунти няма да могат да използват това действие.

Намерете Event Viewer и Utilities Viewer в менюто Computer Management. Внимателно прегледайте всеки от техните раздели, след което решете кои искате да премахнете.

В програмата за преглед на събития изчистете регистрационните файлове на операционната система Windows системикато го изберете с левия бутон на мишката. Разгънете елемента "Действие", след което го стартирайте контекстно менючрез подчертаване Кликнете с десния бутонмишки.

В прозореца, показан на екрана ви, изберете елемента, наречен „Изтриване на всички събития“ и, ако наистина искате да направите това, потвърдете операцията в диалоговия прозорец, който се появява. Изчакайте, докато съдържанието на регистрационните файлове бъде премахнато от вашия компютър.

Използвайте специални програмиоптимизиране на компютъра за почистване на лог файлове по по-разбираем и по-бърз начин, обикновено те също могат да бъдат конфигурирани да почистват автоматично съдържанието си. Обикновено изчистването на регистрационни файлове е второстепенна задача на такива програми, но те могат да бъдат полезни за ускоряване на вашия компютър, премахване на неизползвани услуги и прекратяване на ненужни процеси. Те също така извършват дефрагментиране на диска, коригиране на грешки, почистване на RAM и т.н.

Полезни съвети

Не почиствайте сами регистрационните файлове, ако нямате уменията на уверен потребител на компютър.

Задачата за изчистване на регистъра на транзакциите 1C въз основа на Microsoft SQLСървърът създава определени затруднения поради автоматичното нарастване на размера на собствените му файлове, въпреки съществуващата възможност за автоматично намаляване на избрания файл.

Инструкция

Уверете се, че разбирате схемата на избраната операция за почистване или по-скоро отрязване на регистрационния файл на транзакциите: процедурата може да се извърши само чрез отрязване на свободното пространство в края на файла и е пряко свързана с избрания метод на създаване архивиране. Ако изберете опцията Пълен, трябва да завършите всички постоянни транзакции и да създадете резервно копие в режим Премахване на неактивни записи от регистрационния файл на транзакциите. Избирането на опцията Simple съкращава целия файл, но не възстановява непременно транзакциите.

Съкращаването на регистрационния файл на транзакциите може да се извърши с помощта на инструмента Query Analyzer с командата DBCC Shrinkfile (log_file_name, desire_file_size) и операцията по почистване може да се извърши само след създаване на пълен резервна базаот същия екип. Използвайте следния синтаксис, за да зададете опции за копиране: BackUp Log selected_base_name само с отрязване.

Създайте пълно резервно копие на регистрационния файл на транзакциите, който да бъде изчистен, ако не е необходимо да възстановявате данните с помощта на инструмента за архивиране на база данни, и изчистете отметката от квадратчето Премахване на неактивни записи от регистрационния файл на транзакциите. Отидете в раздела Опции и променете стойността на параметъра Модел за възстановяване на Прост. Съкратете избрания файл с горната команда или използвайте синтаксиса DBCC ShrinkDatabase (име на_избрана_база_данни, необходим_остатъчен_размер_на_файл_в_%).

Поставете отметка в квадратчето Премахване на неактивни записи от регистъра на транзакциите и архивиране на изходния набор от Enterprise Manager. Възстановете модела за възстановяване до пълен и опитайте отново да възстановите регистрационния файл от Enterprise Manager върху съществуващото копие. Отново махнете отметката от квадратчето Премахване на неактивни записи от регистъра на транзакциите и още веднъж изпълнете архивиранеизбран регистър на транзакциите.

Подобни видеа

източници:

  • Някои характеристики на работата на Microsoft SQL Server 2000

Всеки софтуер изпълнява определени функции. Независимо как го прави, по подразбиране се създава лог файл в папката на помощната програма. Този файле текстов документ, който показва всички действия на програмата.

Ще имаш нужда

  • Софтуер:
  • - всеки текстов редактор;
  • - 7Zip архиватор.

Инструкция

В някои случаи трябва да знаете как сте се държали работещ процеспреди да увисне или поради какви причини програмата е била затворена. Ако погледнете към Linux системи, това действие може да се извърши без преглед на лог файла (при условие, че е стартиран през терминала или конзолата). На операционни системи Windows семействасе създават регистрационни файлове или се добавя запис към системния регистър.

От разговор между двама уеб администратори:

- Вчера бях на вашия сайт ...

„Значи си бил ти!“

В допълнение към общата статистика на сайта (брой уникални посетители, брой уеб страници, които са отворили и т.н.), голямо значениеза уеб администратори има друга информация, например: кои страници от сайта се посещават най-често, кои термини за търсенедовеждат посетители на сайта, кои браузъри и операционна системаизползвани от посетителите, каква резолюция на екрана на посетител и т.н. и т.н.

По правило на всеки сайт е инсталиран външен безплатен (рядко платен) брояч. Ресурсът, предоставил брояча, поддържа разширена статистика за посещенията на ресурса (включително цялата горепосочена информация), която може да бъде прегледана по всяко време. Особено с такива броячи е удобно да се работи с тези, които поставят сайтовете си на безплатен хостинг.

Повечето хостинг доставчици (хостери) на платен хостинг предоставят на клиентите си възможност да използват вече инсталираните инструменти за анализ. Например за сървъри Apacheчесто използвана програма Webalizer, който е инсталиран като добавка за уеб сървър.

Тези, които се хостват на платен хостинг, също могат сами да обработват цялата информация за посещението на сайта: в крайна сметка уеб администраторът има пълен достъп до регистрационните файлове на своя сайт.

Какво е лог файл на уебсайт

Регистрационен файл на уебсайта ( лог файл, дневник-file, log file, log) е текстов файл, в който се записват всички заявки към сайта, както и всички грешки, свързани с тези заявки.

Как се записват събитията в регистрационния файл на сайта

Следователно една от основните цели при създаването на сайт трябва да бъде не просто увеличаване на броя на посещенията, а увеличаване релевантнипосещения - тоест не заблуждавайте посетителите с фалшиви имена, обещания, ключови думи и т.н. - посетителят трябва да намери това, което търси, той има право на това!..

Бележки

1. Изследвайте оценките на компанията netcraft, през юни 2009 г. в Интернет е имало 238 027 855 сайта. В същото време делът на уеб сървърите Apacheвъзлиза на около 47%, Microsoft IIS – 24,80%, qq.com – 12,79%, Google – 4,98%, nginx – 3,69%, слънце – 0,30%.

2. Сървърни лог файлове Apache