Подтвердить что ты не робот

Как раскрасить журналы Rails в Multitail?

Выход tail logs/development.log в терминале XFCE:

output of tail logs/development.log in XFCE Terminal

multitail log/development.log

output of multitail log/development.log

Rails автоматически добавляет escape-коды в файлы журнала. См. development.log файл:

  ^[[1m^[[36m (84.1ms)^[[0m  ^[[1mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) ^[[0m
  ^[[1m^[[35m (92.6ms)^[[0m  CREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")
  ^[[1m^[[36m (0.2ms)^[[0m  ^[[1mSELECT version FROM "schema_migrations"^[[0m
  ^[[1m^[[35m (159.3ms)^[[0m  INSERT INTO "schema_migrations" (version) VALUES ('20130327221553')
  ^[[1m^[[36m (59.9ms)^[[0m  ^[[1mINSERT INTO "schema_migrations" (version) VALUES ('20130326152730')^[[0m
  ^[[1m^[[35m (59.8ms)^[[0m  INSERT INTO "schema_migrations" (version) VALUES ('20130327173637')

multitail -c выводят неиспользуемый вывод.

Output of multitail -c

Как раскрасить журналы в Multitail без написания собственной цветовой схемы?

4b9b3361

Ответ 1

Это все о интерпретации ANSI escape-последовательностей, который делает терминал не tail сам и должен делать multitail.  Это можно сделать с помощью опции -cT ANSI:

-cT term    interpret terminal-codes from file/command (for terminal type 'term')

Пример:

$ multitail -cT ansi log/development.log
multiple files:
$ multitail -cT ansi log/development.log -cT ANSI log/test.log

colorized output of multitail -cT ansi log/development.log