ccze muito lento para colorir logs

1

Eu quero usar ccze para colorir meus registros, mas é muito lento:

Operando em 1832 linhas de logs:

$ journalctl --since 12:00 --until 12:30 | wc -l
1832

Sem colorir, obter os registros leva 0,01s no tempo do usuário:

$ time journalctl --since 12:00 --until 12:30 > /dev/null

real    0m0.021s
user    0m0.010s
sys     0m0.007s

Com ccze , leva 32,66 segundos (3260x mais!):

$ time journalctl --since 12:00 --until 12:30 | ccze > /dev/null

real    0m40.965s
user    0m32.660s
sys     0m2.193s

Em comparação, grc leva apenas 0,24s (24x):

$ time grc journalctl --since 12:00 --until 12:30 > /dev/null                                                                                              24.3s | 24 Aug 13:04

real    0m0.230s
user    0m0.237s
sys     0m0.017s

AFAIK Estou usando a configuração padrão com ccze 0.2.1 .

Se for lento, é provavelmente útil apenas para acompanhar novas gravações no final dos arquivos de log, por exemplo, com journalctl -f .

ccze é normalmente tão lento?

    
por Tom Hale 24.08.2017 / 08:12

1 resposta

1

Tente usar o argumento -o nolookups . Veja a página de manual para detalhes .

18 segundos sem argumentos:

time journalctl --since 12:00 --until 12:10 | ccze > /dev/null
journalctl --since 12:00 --until 12:10  0.01s user 0.01s system 0% cpu 10.686 total
ccze > /dev/null  12.51s user 1.27s system 76% cpu 18.041 total

0,15 segundos com -o nolookups :

time journalctl --since 12:00 --until 12:10 | ccze -o nolookups > /dev/null
journalctl --since 12:00 --until 12:10  0.01s user 0.01s system 24% cpu 0.091 total
ccze -o nolookups > /dev/null  0.13s user 0.01s system 95% cpu 0.145 total
    
por 09.08.2018 / 00:35