Author Topic: Ведение лога в файле с указанием даты  (Read 2712 times)

0 Members and 1 Guest are viewing this topic.

Annihilant

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Написал скрипт выполняющий однообразную вечернюю рабочую задачу, каждый вечер, в определенное время. Чтобы контролировать отработал ли скрипт, естественно пишу каждое действие в лог, что бы знать где споткнулся. Но вот беда нет даты, только время. В самом начале поставил что бы он при первом выведении в лог инфы поставил туда еще и дату, но искать будет неудобно, конкретный день. Есть ли возможность поставить в лог сначала дату потом уже время, и у каждого сообщения?

ЦИТРИН

  • Супермодератор
  • Оплот сообщества
  • *
  • Posts: 484
  • Марафон опавших листьев, коктейль из дыма и мыслей
    • View Profile
Re: Ведение лога в файле с указанием даты
« Reply #1 on: October 28, 2015, 09:58:08 AM »
В системных переменных  есть  нужная  заготовка :  "текущее число"  , месяц ,год итп. Выбирайте нужное прямо из команд редактора.
print($_date_d,".",$_date_m,".",$_date_y)

Тут скриншот
http://grabilla.com/05a1c-59f2877d-a712-4bec-ab66-22873406ae72.png
« Last Edit: October 28, 2015, 10:03:55 AM by ЦИТРИН »
Бабочки полёт будит тихую поляну в солнечном свету...

Annihilant

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Re: Ведение лога в файле с указанием даты
« Reply #2 on: October 28, 2015, 10:56:08 AM »
Эти команды я нашел. вот так в начале сделал.
Code: [Select]
print ($_date_y,"-",$_date_m,"-",$_date_d, " начали")Вот только получилось что нужно в каждой команде "print" это писать, плюс сначала идет время, а уж потом дата. А мне хочется дату сначала, а уж потом время.

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Ведение лога в файле с указанием даты
« Reply #3 on: October 28, 2015, 12:58:25 PM »
Есть же TFWRITE пиши в текстовик что хочешь и как хочешь

Вот пример
Code: (clickermann) [Select]
SUB(LOG,$note) // подпрограмму размести в начале скрипта
   $th = $_time_h
   $tm = $_time_m
   $ts = $_time_s
   $dd = $_date_d
   $dm = $_date_m
   $dy = $_date_y
   IF(STRLEN($th)<2)
      $th = STRCONCAT ("0", $th)
   END_IF
   IF(STRLEN($tm)<2)
      $tm = STRCONCAT ("0", $tm)
   END_IF
   IF(STRLEN($ts)<2)
      $ts = STRCONCAT ("0", $ts)
   END_IF
   IF(STRLEN($dd)<2)
      $dd = STRCONCAT ("0", $dd)
   END_IF
   IF(STRLEN($dm)<2)
      $dm = STRCONCAT ("0", $dm)
   END_IF
   IF(STRLEN($dy)<2)
      $dy = STRCONCAT ("0", $dy)
   END_IF
   LOGWRITE ($note) // запись в лог
   TFWRITE("LOG.txt", STRCONCAT($dd,".",$dm,".",$dy," ",$th,":",$tm,":",$ts, " ", $note)) // запись в файл
END_SUB

LOG("Примечание") // вызов подпрограммы


HALT
« Last Edit: October 28, 2015, 01:03:25 PM by Oraven »

Annihilant

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Re: Ведение лога в файле с указанием даты
« Reply #4 on: October 28, 2015, 02:22:24 PM »
Вроде то что нужно. Сейчас пойму как это работает. Logwrite я так думаю мне не к чему, мне тогда обычный лог не к чему.

Прога работает, дело свое делает, но есть один косяк. Я периодически вывожу в лог найденные координаты
Code: [Select]
log ("x=", $x," y=", $y)и при выводе координат прога глючит. :(
« Last Edit: October 28, 2015, 03:41:16 PM by Annihilant »

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Ведение лога в файле с указанием даты
« Reply #5 on: October 28, 2015, 02:52:56 PM »
LOG("текст") это твоя подпрограмма. Подпрограмма принимает один ТЕКСТОВЫЙ параметр.
Естественно в неё нельзя пихать так же как ты выводишь в logwrite

должен всё перевести в строку и объединить
Code: (clickermann) [Select]
log (STRCONCAT ("x=", $x," y=", $y))


Annihilant

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Re: Ведение лога в файле с указанием даты
« Reply #6 on: October 28, 2015, 03:40:41 PM »
Ок. Понял. Огромное спасибо.

Annihilant

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Re: Ведение лога в файле с указанием даты
« Reply #7 on: October 28, 2015, 03:50:21 PM »
Все заработало! Всем огромное спасибо! Больше вопросов не имею.  :D