Fórum Root.cz

Hlavní témata => Software => Téma založeno: lathe 09. 12. 2021, 20:30:29

Název: journalctl při -r + -n vynechá nejnovější záznamy
Přispěvatel: lathe 09. 12. 2021, 20:30:29
Dělám něco špatně, nebo příkaz journalctl při současném použití -r a -n 7004 blbne? Jako vím, že mohu použít journalctl -r | head -n7004, ale proč to blbne v tamtom?

čas nyní 20:21-, nejnovější záznam 20:20. záznam na pořadí 7004 cca v 17:0x.


Očekáváno : vypíše posledních 7004 záznamů od nejnovějších dolů (parametr r). Vypadá to jako když kombinace -r a -n blbne.

Místo toho: chybí prvních 7003(přibližně) záznamů, začíná od 7004tého (přibližně) a vypisuje k 14008mému řádku (přibližně)


Zkoušel jsem i argumenty --no-pager, --no-tail --pager-end

Kód: [Vybrat]


pixla@id:~ $ journalctl   -n 7004 -r  | cat | head -n9 | grep -Pio "^.+:\d\d "
-- Logs begin at Wed 2021-12-08 22:15:43 CET, end at Thu 2021-12-09 20:22:10
pro 09 17:07:12
pro 09 17:07:12
pro 09 17:07:02
pro 09 17:07:02
pro 09 17:07:02
pro 09 17:07:02
pro 09 17:07:02
pro 09 17:07:02
pixla@id:~ $ journalctl   -n 7004 -r  | cat | tail -n9 | grep -Pio "^.+:\d\d "
pro 09 13:24:07
pro 09 13:24:07
pro 09 13:24:07
pro 09 13:24:07
pro 09 13:23:55
pro 09 13:23:55
pro 09 13:23:55
pro 09 13:23:55
pro 09 13:23:43

# wtf where 19:12


workaround: (mírný časový posun ,nehraje roli , čas 20:33)

 $ journalctl -r |head -n 2 |grep -Pio "^.+:\d\d"
-- Logs begin at Wed 2021-12-08 22:15:43 CET, end at Thu 2021-12-09 20:31:40
pro 09 20:31:40
...atd


Komentář k řetězení:

nadbytečný cat - vím, byl jsem líný ho umazat při testování
tail a head - aby tu nebyly tisíce řádků
grep - ovoce, které skryje nepotřebné detaily
Název: Re:journalctl při -r + -n vynechá nejnovější záznamy
Přispěvatel: tecka 10. 12. 2021, 09:52:52
Jakou máš verzi systemd?

https://github.com/systemd/systemd/commit/23b392166388003530fef02ac5758c91315a707b (https://github.com/systemd/systemd/commit/23b392166388003530fef02ac5758c91315a707b)
Název: Re:journalctl při -r + -n vynechá nejnovější záznamy
Přispěvatel: lathe 10. 12. 2021, 22:40:13
Aha, 241.
Mimochodem na té stránce je napsáno
Kód: [Vybrat]
    main (#14552)
    v250-rc2 ... v245-rc1
Proč je tam verze uvedená dvakrát? Po rozbalení trojtečky se tam ukáže "interval verzí". Předpoklám správně, že tento opravný commit byl pro verzi* 245 a jen pro pořádek to píše ve kterých dalších verzích* až po současnou(250) to je?

* Nebo přesněji že to je první verze, která obsahuje tento comit
* možná je to tag nebo release