เจเฉเจเจฐ เจคเฉเจธเฉเจ เจฒเฉเจ เจฆเฉเจเจฃ เจฒเจ เจเจฆเฉ เจตเฉเฉฑเจฌ เจเฉฐเจเจฐเจซเฉเจธ เจฆเฉ เจตเจฐเจคเฉเจ เจเฉเจคเฉ เจนเฉ, เจคเจพเจ เจคเฉเจธเฉเจ เจธเจผเจพเจเจฆ เจฆเฉเจเจฟเจ เจนเฉเจตเฉเจเจพ เจเจฟ เจเจฟเจตเฉเจ, เจเฉฑเจ เจจเจฟเจฏเจฎ เจฆเฉ เจคเฉเจฐ 'เจคเฉ, เจเจน เจเฉฐเจเจฐเจซเฉเจธ เจฌเฉเจเจฒ เจนเฉเฉฐเจฆเฉ เจนเจจ เจ เจคเฉ (เจ เจเจธเจฐ) เจฌเจนเฉเจค เจธเฉเจตเจฟเจงเจพเจเจจเจ เจ เจคเฉ เจเจตเจพเจฌเจฆเฉเจน เจจเจนเฉเจ เจนเฉเฉฐเจฆเฉ เจนเจจเฅค เจเฉเจ เจฆเฉ เจคเฉเจธเฉเจ เจเจฆเจค เจชเจพ เจธเจเจฆเฉ เจนเฉ, เจเฉเจ เจฌเจฟเจฒเจเฉเจฒ เจญเจฟเจเจจเจ เจนเจจ, เจชเจฐ เจเจน เจฎเฉเจจเฉเฉฐ เจเจพเจชเจฆเจพ เจนเฉ เจเจฟ เจธเจพเจฐเฉเจเจ เจธเจฎเฉฑเจธเจฟเจเจตเจพเจ เจฆเจพ เจเจพเจฐเจจ เจเจน เจนเฉ เจเจฟ เจ เจธเฉเจ เจฒเฉเจเจธ เจจเฉเฉฐ เจฆเฉเจเจฃ เจฆเฉ เจเฉฐเจฎ เจจเฉเฉฐ เจเจฒเจค เจคเจฐเฉเจเฉ เจจเจพเจฒ เจชเจนเฉเฉฐเจเจฆเฉ เจนเจพเจ: เจ เจธเฉเจ เจเฉฑเจ เจตเฉเจฌ เจเฉฐเจเจฐเจซเฉเจธ เจฌเจฃเจพเจเจฃ เจฆเฉ เจเฉเจธเจผเจฟเจธเจผ เจเจฐเจฆเฉ เจนเจพเจ เจเจฟเฉฑเจฅเฉ เจธเฉ.เจเจฒ.เจเจ. (เจเจฎเจพเจเจก เจฒเจพเจเจจ เจเฉฐเจเจฐเจซเฉเจธ) เจฌเจฟเจนเจคเจฐ เจเฉฐเจฎ เจเจฐเจฆเจพ เจนเฉเฅค เจฎเฉเจ เจจเจฟเฉฑเจเฉ เจคเฉเจฐ 'เจคเฉ tail, grep, awk เจ เจคเฉ เจนเฉเจฐเจพเจ เจจเจพเจฒ เจเฉฐเจฎ เจเจฐเจจ เจตเจฟเฉฑเจ เจฌเจนเฉเจค เจเจฐเจพเจฎเจฆเจพเจเจ เจนเจพเจ, เจ เจคเฉ เจเจธเจฒเจ เจฎเฉเจฐเฉ เจฒเจ เจฒเฉเจเจธ เจจเจพเจฒ เจเฉฐเจฎ เจเจฐเจจ เจฒเจ เจเจฆเจฐเจธเจผ เจเฉฐเจเจฐเจซเฉเจธ tail เจ เจคเฉ grep เจฆเฉ เจธเจฎเจพเจจ เจนเฉเจตเฉเจเจพ, เจชเจฐ เจเฉ เจเจฟ เจฌเจนเฉเจค เจธเจพเจฐเฉ เจธเจฐเจตเจฐเจพเจ เจคเฉเจ เจเจ เจฒเฉเจเจธ เจจเฉเฉฐ เจชเฉเฉเจนเจจ เจฒเจ เจตเฉ เจตเจฐเจคเจฟเจ เจเจพ เจธเจเจฆเจพ เจนเฉเฅค เจเจน เจนเฉ, เจฌเฉเจธเจผเจ, เจเจนเจจเจพเจ เจจเฉเฉฐ เจเจฒเจฟเจเจนเจพเจเจธ เจคเฉเจ เจชเฉเฉเจนเฉ!
* เจนเฉเจฌเจฐเจพ เจเจชเจญเฉเจเจคเจพ เจฆเฉ เจจเจฟเฉฑเจเฉ เจฐเจพเจ เจฆเฉ เจ
เจจเฉเจธเจพเจฐ
logscli เจจเฉเฉฐ เจฎเจฟเจฒเฉ
เจฎเฉเจ เจเจชเจฃเฉ เจเฉฐเจเจฐเจซเฉเจธ เจฒเจ เจเฉเจ เจจเจพเจฎ เจจเจนเฉเจ เจฒเฉ เจเฉ เจเจเจ เจธเฉ, เจ
เจคเฉ, เจเจฎเจพเจจเจฆเจพเจฐ เจนเฉเจฃ เจฒเจ, เจเจน เจเฉฑเจ เจชเฉเจฐเฉเจเฉเจเจพเจเจช เจฆเฉ เจฐเฉเจช เจตเจฟเฉฑเจ เจฎเฉเจเฉเจฆ เจนเฉ, เจชเจฐ เจเฉเจเจฐ เจคเฉเจธเฉเจ เจธเจฐเฉเจค เจเฉเจก เจจเฉเฉฐ เจคเฉเจฐเฉฐเจค เจฆเฉเจเจฃเจพ เจเจพเจนเฉเฉฐเจฆเฉ เจนเฉ, เจคเจพเจ เจคเฉเจนเจพเจกเจพ เจธเฉเจเจเจค เจนเฉ:
เจซเฉเจเจฐ
เจฎเฉเจฐเจพ เจเฉเจเจพ เจเฉฑเจ เจเฉฐเจเจฐเจซเฉเจธ เจฌเจฃเจพเจเจฃเจพ เจธเฉ เจเฉ เจเจนเจจเจพเจ เจฒเฉเจเจพเจ เจฒเจ เจเจพเจฃเฉ เจเจพเจชเจฆเจพ เจนเฉ เจเฉ เจเฉเจฒ/เจเฉเจฐเฉเจช เจฒเจ เจตเจฐเจคเฉ เจเจพเจเจฆเฉ เจนเจจ, เจญเจพเจต, เจนเฉเจ เจฒเจฟเจเฉเจเจ เจเฉเจเจผเจพเจ เจฆเจพ เจธเจฎเจฐเจฅเจจ เจเจฐเจจ เจฒเจ:
- เจซเจฟเจฒเจเจฐ เจเฉเจคเฉ เจฌเจฟเจจเจพเจ, เจธเจพเจฐเฉ เจฒเฉเจ เจฆเฉเจเฉเฅค
- เจเฉฑเจ เจธเจฅเจฟเจฐ เจธเจฌเจธเจเฉเจฐเจฟเฉฐเจ เจตเจพเจฒเฉเจเจ เจฒเจพเจเจจเจพเจ เจเฉฑเจกเฉ (เจซเจฒเฉเจ
-F
ัgrep
). - เจฐเฉเจเฉเจฒเจฐ เจธเจฎเฉเจเจฐเจจ เจจเจพเจฒ เจฎเฉเจฒ เจเจพเจเจฆเฉเจเจ เจฒเจพเจเจจเจพเจ เจเฉฑเจกเฉ (เจซเจฒเฉเจ
-E
ัgrep
). - เจฎเฉเจฒ เจฐเฉเจช เจตเจฟเฉฑเจ, เจฆเฉเจเจฃเจพ เจเจฒเจ เจเจพเจฒเจเฉเจฐเจฎเจฟเจ เจเฉเจฐเจฎ เจตเจฟเฉฑเจ เจนเฉเฉฐเจฆเจพ เจนเฉ, เจเจฟเจเจเจเจฟ เจธเจญ เจคเฉเจ เจคเจพเจเจผเจพ เจฒเฉเจ เจเจฎ เจคเฉเจฐ 'เจคเฉ เจชเจนเจฟเจฒเจพเจ เจฆเจฟเจฒเจเจธเจชเฉ เจฆเฉ เจนเฉเฉฐเจฆเฉ เจนเจจเฅค
- เจนเจฐเฉเจ เจฒเจพเจเจจ เจฆเฉ เจ
เฉฑเจเฉ เจธเฉฐเจฆเจฐเจญ เจฆเจฟเจเจพเจ (เจตเจฟเจเจฒเจช
-A
,-B
ะธ-C
ัgrep
, เจเฉเจฐเจฎเจตเจพเจฐ เจนเจฐเฉเจ เจฎเฉเจฒ เจเจพเจเจฆเฉ เจฒเจพเจเจจ เจคเฉเจ เจชเจนเจฟเจฒเจพเจ, เจฌเจพเจ เจฆ เจ เจคเฉ เจเจฒเฉ เจฆเฉเจเจฒเฉ N เจฒเจพเจเจจเจพเจ เจจเฉเฉฐ เจเจพเจชเจฃเจพ)เฅค - เจเจเจฃ เจตเจพเจฒเฉ เจฒเฉเจเจธ เจจเฉเฉฐ เจฐเฉเจ
เจฒ เจเจพเจเจฎ เจตเจฟเฉฑเจ เจฆเฉเจเฉ, เจซเจฟเจฒเจเจฐเจฟเฉฐเจ เจฆเฉ เจจเจพเจฒ เจเจพเจ เจฌเจฟเจจเจพเจ (เจเจผเจฐเฉเจฐเฉ เจคเฉเจฐ 'เจคเฉ
tail -f | grep
). - เจเฉฐเจเจฐเจซเฉเจธ เจจเจพเจฒ เจ
เจจเฉเจเฉเจฒ เจนเฉเจฃเจพ เจเจพเจนเฉเจฆเจพ เจนเฉ
less
,head
,tail
เจ เจคเฉ เจนเฉเจฐ - เจฎเฉเจฒ เจฐเฉเจช เจตเจฟเฉฑเจ, เจจเจคเฉเจเฉ เจเจนเจจเจพเจ เจฆเฉ เจเจฟเจฃเจคเฉ 'เจคเฉ เจชเจพเจฌเฉฐเจฆเฉเจเจ เจคเฉเจ เจฌเจฟเจจเจพเจ เจตเจพเจชเจธ เจเฉเจคเฉ เจเจพเจฃเฉ เจเจพเจนเฉเจฆเฉ เจนเจจ; เจฒเจพเจเจจเจพเจ เจจเฉเฉฐ เจเฉฑเจ เจธเจเฉเจฐเฉเจฎ เจตเจเฉเจ เจเจพเจชเจฟเจ เจเจพเจเจฆเจพ เจนเฉ เจเจฆเฉเจ เจคเฉฑเจ เจเจชเจญเฉเจเจคเจพ เจเจนเจจเจพเจ เจจเฉเฉฐ เจชเฉเจฐเจพเจชเจค เจเจฐเจจ เจตเจฟเฉฑเจ เจฆเจฟเจฒเจเจธเจชเฉ เจฐเฉฑเจเจฆเจพ เจนเฉ; เจเจธเจผเจพเจฐเจพSIGPIPE
เจจเฉเฉฐ เจเฉเฉฑเจชเจเจพเจช เจฒเฉเจ เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ เจตเจฟเฉฑเจ เจตเจฟเจเจจ เจชเจพเจเจฃเจพ เจเจพเจนเฉเจฆเจพ เจนเฉ, เจเจฟเจตเฉเจ เจเจฟ เจเจน เจเจฐเจฆเฉ เจนเจจtail
,grep
เจ เจคเฉ เจนเฉเจฐ UNIX เจเจชเจฏเฉเจเจคเจพเจตเจพเจเฅค
ะ ะตะฐะปะธะทะฐัะธั
เจฎเฉเจ เจเจน เจฎเฉฐเจจ เจฒเจตเจพเจเจเจพ เจเจฟ เจคเฉเจธเฉเจ เจชเจนเจฟเจฒเจพเจ เจนเฉ เจเจฟเจธเฉ เจคเจฐเฉเจนเจพเจ เจเจพเจฃเจฆเฉ เจนเฉ เจเจฟ เจเจฒเจฟเจเจนเจพเจเจธ เจจเฉเฉฐ เจฒเฉเจเจธ เจจเฉเฉฐ เจเจฟเจตเฉเจ เจชเจนเฉเฉฐเจเจพเจเจฃเจพ เจนเฉ. เจเฉ เจจเจนเฉเจ, เจคเจพเจ เจฎเฉเจ เจเจธเจจเฉเฉฐ เจ
เจเจผเจฎเจพเจเจฃ เจฆเฉ เจธเจฟเจซเจพเจฐเจธเจผ เจเจฐเจฆเจพ เจนเจพเจ
เจชเจนเจฟเจฒเจพเจ เจคเฉเจนเจพเจจเฉเฉฐ เจ เจงเจพเจฐ เจธเจเฉเจฎ 'เจคเฉ เจซเฉเจธเจฒเจพ เจเจฐเจจ เจฆเฉ เจเจผเจฐเฉเจฐเจค เจนเฉ. เจเจฟเจเจเจเจฟ เจคเฉเจธเฉเจ เจเจฎ เจคเฉเจฐ 'เจคเฉ เจธเจฎเฉเจ เจ เจจเฉเจธเจพเจฐ เจเฉเจฐเจฎเจฌเฉฑเจง เจเฉเจคเฉ เจฒเฉเจเจพเจ เจจเฉเฉฐ เจชเฉเจฐเจพเจชเจค เจเจฐเจจเจพ เจเจพเจนเฉเฉฐเจฆเฉ เจนเฉ, เจเจธ เจฒเจ เจเจนเจจเจพเจ เจจเฉเฉฐ เจเจธ เจคเจฐเฉเจเฉ เจจเจพเจฒ เจธเจเฉเจฐ เจเจฐเจจเจพ เจฒเจพเจเจผเฉเจเจฒ เจฒเฉฑเจเจฆเจพ เจนเฉเฅค เจเฉเจเจฐ เจฌเจนเฉเจค เจธเจพเจฐเฉเจเจ เจฒเฉเจ เจธเจผเฉเจฐเฉเจฃเฉเจเจ เจนเจจ เจ เจคเฉ เจเจน เจธเจพเจฐเฉเจเจ เจเฉฑเจเฉ เจเจฟเจธเจฎ เจฆเฉเจเจ เจนเจจ, เจคเจพเจ เจคเฉเจธเฉเจ เจชเฉเจฐเจพเจเจฎเจฐเฉ เจเฉเฉฐเจเฉ เจฆเฉ เจชเจนเจฟเจฒเฉ เจเจพเจฒเจฎ เจตเจเฉเจ เจเฉฑเจ เจฒเฉเจ เจธเจผเฉเจฐเฉเจฃเฉ เจฌเจฃเจพ เจธเจเจฆเฉ เจนเฉ - เจเจน เจคเฉเจนเจพเจจเฉเฉฐ เจเจเจเจ เจฆเฉ เจฌเจเจพเจ เจเฉฑเจ เจธเจพเจฐเจฃเฉ เจฐเฉฑเจเจฃ เจฆเฉ เจเจเจพเจเจผเจค เจฆเฉเจตเฉเจเจพ, เจเฉ เจเจฟ เจเฉฑเจ เจตเฉฑเจกเจพ เจชเจฒเฉฑเจธ เจนเฉเจตเฉเจเจพ เจเจฆเฉเจ เจเจฒเจฟเจเจนเจพเจเจธ เจตเจฟเฉฑเจ เจธเฉฐเจฎเจฟเจฒเจฟเจค เจเจฐเจจเจพ (เจนเจพเจฐเจก เจกเจฐเจพเจเจตเจพเจ เจตเจพเจฒเฉ เจธเจฐเจตเจฐเจพเจ 'เจคเฉ, เจชเฉเจฐเจคเฉ เจธเจเจฟเฉฐเจ ~ 1 เจตเจพเจฐ เจคเฉเจ เจตเฉฑเจง เจกเจพเจเจพ เจชเจพเจเจฃ เจฆเฉ เจธเจฟเจซเจพเจฐเจธเจผ เจเฉเจคเฉ เจเจพเจเจฆเฉ เจนเฉ) เจชเฉเจฐเฉ เจธเจฐเจตเจฐ เจฒเจ).
เจญเจพเจต, เจธเจพเจจเฉเฉฐ เจฒเจเจญเจ เจนเฉเจ เจพเจ เจฆเจฟเฉฑเจคเฉ เจธเจพเจฐเจฃเฉ เจธเจเฉเจฎ เจฆเฉ เจฒเฉเฉ เจนเฉ:
CREATE TABLE logs(
category LowCardinality(String), -- ะบะฐัะตะณะพัะธั ะปะพะณะพะฒ (ะพะฟัะธะพะฝะฐะปัะฝะพ)
time DateTime, -- ะฒัะตะผั ัะพะฑััะธั
millis UInt16, -- ะผะธะปะปะธัะตะบัะฝะดั (ะผะพะณัั ะฑััั ะธ ะผะธะบัะพัะตะบัะฝะดั, ะธ ั.ะด.): ัะตะบะพะผะตะฝะดัะตััั ั
ัะฐะฝะธัั, ะตัะปะธ ัะพะฑััะธะน ะผะฝะพะณะพ, ััะพะฑั ะฑัะปะพ ะปะตะณัะต ัะฐะทะปะธัะฐัั ัะพะฑััะธั ะผะตะถะดั ัะพะฑะพะน
..., -- ะฒะฐัะธ ัะพะฑััะฒะตะฝะฝัะต ะฟะพะปั, ะฝะฐะฟัะธะผะตั ะธะผั ัะตัะฒะตัะฐ, ััะพะฒะตะฝั ะปะพะณะธัะพะฒะฐะฝะธั, ะธ ัะฐะบ ะดะฐะปะตะต
message String -- ัะตะบัั ัะพะพะฑัะตะฝะธั
) ENGINE=MergeTree()
ORDER BY (category, time, millis)
เจฌเจฆเจเจฟเจธเจฎเจคเฉ เจจเจพเจฒ, เจฎเฉเจจเฉเฉฐ เจคเฉเจฐเฉฐเจค เจตเจพเจธเจคเจตเจฟเจ เจฒเฉเจเจธ เจฆเฉ เจจเจพเจฒ เจเฉเจ เจเฉเฉฑเจฒเจพ เจธเจฐเฉเจค เจจเจนเฉเจ เจฎเจฟเจฒเจฟเจ เจเจฟเจธเจจเฉเฉฐ เจฎเฉเจ เจซเฉ เจเฉ เจกเจพเจเจจเจฒเฉเจก เจเจฐ เจธเจเจฆเจพ/เจธเจเจฆเฉ เจนเจพเจ, เจเจธเจฒเจ เจฎเฉเจ เจเจธเจจเฉเฉฐ เจเฉฑเจ เจเจฆเจพเจนเจฐเจฃ เจตเจเฉเจ เจฒเจฟเจเฅค
เจเจฒเจฟเจเจนเจพเจเจธ 'เจคเฉ เจเจฎเจพเจเจผเจพเจจ เจธเจฎเฉเจเจฟเจเจตเจพเจ เจจเฉเฉฐ เจ เฉฑเจชเจฒเฉเจก เจเจฐเจจ เจฒเจ เจจเจฟเจฐเจฆเฉเจธเจผ
เจเจ เจเฉฑเจ เจธเจพเจฐเจฃเฉ เจฌเจฃเจพเจเจ:
CREATE TABLE amazon(
review_date Date,
time DateTime DEFAULT toDateTime(toUInt32(review_date) * 86400 + rand() % 86400),
millis UInt16 DEFAULT rand() % 1000,
marketplace LowCardinality(String),
customer_id Int64,
review_id String,
product_id LowCardinality(String),
product_parent Int64,
product_title String,
product_category LowCardinality(String),
star_rating UInt8,
helpful_votes UInt32,
total_votes UInt32,
vine FixedString(1),
verified_purchase FixedString(1),
review_headline String,
review_body String
)
ENGINE=MergeTree()
ORDER BY (time, millis)
SETTINGS index_granularity=8192
เจเจฎเจพเจเจผเจพเจจ เจกเฉเจเจพเจธเฉเจ เจตเจฟเฉฑเจ เจธเจฎเฉเจเจฟเจ เจฒเจ เจธเจฟเจฐเจซ เจเฉฑเจ เจฎเจฟเจคเฉ เจนเฉ, เจชเจฐ เจเฉเจ เจธเจนเฉ เจธเจฎเจพเจ เจจเจนเฉเจ เจนเฉ, เจเจธ เจฒเจ เจเจ เจเจธ เจกเฉเจเจพ เจจเฉเฉฐ เจฐเฉเจเจกเจจ เจจเจพเจฒ เจญเจฐเฉเจเฅค
เจคเฉเจนเจพเจจเฉเฉฐ เจธเจพเจฐเฉเจเจ tsv เจซเจพเจเจฒเจพเจ เจจเฉเฉฐ เจกเจพเจเจจเจฒเฉเจก เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจจเจนเฉเจ เจนเฉ เจ เจคเฉ เจเจชเจฃเฉ เจเจช เจจเฉเฉฐ เจชเจนเจฟเจฒเฉ ~ 10-20 เจคเฉฑเจ เจธเฉเจฎเจฟเจค เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจจเจนเฉเจ เจนเฉ เจคเจพเจ เจเฉ เจกเฉเจเจพ เจฆเจพ เจเจพเจซเจผเฉ เจตเฉฑเจกเจพ เจธเฉเฉฑเจ เจชเฉเจฐเจพเจชเจค เจเฉเจคเจพ เจเจพ เจธเจเฉ เจเฉ 16 GB RAM เจตเจฟเฉฑเจ เจซเจฟเฉฑเจ เจจเจนเฉเจ เจนเฉเจตเฉเจเจพเฅค TSV เจซเจพเจเจฒเจพเจ เจจเฉเฉฐ เจ เจชเจฒเฉเจก เจเจฐเจจ เจฒเจ เจฎเฉเจ เจนเฉเจ เจพเจ เจฆเจฟเฉฑเจคเฉ เจเจฎเจพเจเจก เจฆเฉ เจตเจฐเจคเฉเจ เจเฉเจคเฉ:
for i in *.tsv; do
echo $i;
tail -n +2 $i | pv |
clickhouse-client --input_format_allow_errors_ratio 0.5 --query='INSERT INTO amazon(marketplace,customer_id,review_id,product_id,product_parent,product_title,product_category,star_rating,helpful_votes,total_votes,vine,verified_purchase,review_headline,review_body,review_date) FORMAT TabSeparated'
done
1000 GB เจฆเฉ เจเจเจพเจฐ เจฆเฉ เจจเจพเจฒ Google เจเจฒเจพเจเจก เจตเจฟเฉฑเจ เจเฉฑเจ เจฎเจฟเจเจฐเฉ เจชเจฐเจธเจฟเจธเจเฉเจเจ เจกเจฟเจธเจ (เจเฉ เจเจฟ เจเฉฑเจ HDD เจนเฉ) เจเฉฑเจคเฉ (เจฎเฉเจ เจฎเฉเฉฑเจ เจคเฉเจฐ 'เจคเฉ เจเจน เจเจเจพเจฐ เจฒเจฟเจ เจนเฉ เจคเจพเจ เจเจฟ เจธเจชเฉเจก เจฅเฉเฉเฉ เจตเฉฑเจง เจนเฉเจตเฉ, เจนเจพเจฒเจพเจเจเจฟ เจธเจผเจพเจเจฆ เจฒเฉเฉเฉเจเจฆเฉ เจเจเจพเจฐ เจฆเจพ เจเฉฑเจ SSD เจธเจธเจคเจพ เจนเฉเฉฐเจฆเจพ) เจ เฉฑเจชเจฒเฉเจก 75 เจเฉเจฐเจพเจ 'เจคเฉ เจเจคเฉ เจฒเจเจญเจ ~ 4 MB/sec เจธเฉเฅค
- เจฎเฉเจจเฉเฉฐ เจเฉฑเจ เจฐเจฟเจเจผเจฐเจตเฉเจธเจผเจจ เจเจฐเจจเจพ เจเจพเจนเฉเจฆเจพ เจนเฉ เจเจฟ เจฎเฉเจ Google เจตเจฟเฉฑเจ เจเฉฐเจฎ เจเจฐเจฆเจพ เจนเจพเจ, เจชเจฐ เจฎเฉเจ เจเฉฑเจ เจจเจฟเฉฑเจเฉ เจเจพเจคเจพ เจตเจฐเจคเจฟเจ เจนเฉ เจ เจคเฉ เจเจธ เจฒเฉเจ เจฆเจพ เจเฉฐเจชเจจเฉ เจตเจฟเฉฑเจ เจฎเฉเจฐเฉ เจเฉฐเจฎ เจจเจพเจฒ เจเฉเจ เจฒเฉเจฃเจพ-เจฆเฉเจฃเจพ เจจเจนเฉเจ เจนเฉ
เจฎเฉเจ เจเจธ เจตเจฟเจธเจผเฉเจธเจผ เจกเฉเจเจพเจธเฉเจ เจจเจพเจฒ เจธเจพเจฐเฉ เจฆเฉเจฐเจฟเจธเจผเจเจพเจเจค เจคเจฟเจเจฐ เจเจฐเจพเจเจเจพ, เจเจฟเจเจเจเจฟ เจเจน เจธเจญ เจฎเฉเจฐเฉ เจเฉเจฒ เจธเฉเฅค
เจกเจพเจเจพ เจธเจเฉเจจเจฟเฉฐเจ เจชเฉเจฐเจเจคเฉ เจฆเจฟเจเจพเจ
เจเจฟเจเจเจเจฟ เจเจฒเจฟเจเจนเจพเจเจธ เจตเจฟเฉฑเจ เจ
เจธเฉเจ เจฒเฉเจเจธ เจฆเฉ เจจเจพเจฒ เจเฉฑเจ เจเฉเจฌเจฒ 'เจคเฉ เจเฉฑเจ เจชเฉเจฐเฉ เจธเจเฉเจจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจพเจเจเฉ, เจ
เจคเฉ เจเจธ เจเจพเจฐเจตเจพเจ เจตเจฟเฉฑเจ เจเจพเจซเจผเฉ เจธเจฎเจพเจ เจฒเฉฑเจ เจธเจเจฆเจพ เจนเฉ เจ
เจคเฉ เจนเฉ เจธเจเจฆเจพ เจนเฉ เจเจฟ เจฒเฉฐเจฌเฉ เจธเจฎเฉเจ เจคเฉฑเจ เจเฉเจ เจจเจคเฉเจเจพ เจจเจพ เจฆเฉ เจธเจเฉ เจเฉเจเจฐ เจเฉเจ เจฎเฉเจฒ เจฎเจฟเจฒเฉ เจนเจจ, เจคเจพเจ เจเจน เจฆเจฟเจเจพเจเจฃ เจฆเฉ เจฏเฉเจ เจนเฉเจฃ เจฆเฉ เจธเจฒเจพเจน เจฆเจฟเฉฑเจคเฉ เจเจพเจเจฆเฉ เจนเฉเฅค เจจเจคเฉเจเฉ เจฆเฉ เจจเจพเจฒ เจชเจนเจฟเจฒเฉ เจเจคเจพเจฐเจพเจ เจชเฉเจฐเจพเจชเจค เจนเฉเจฃ เจคเฉฑเจ เจชเฉเฉฑเจเจเจฟเฉฑเจ เจฆเฉ เจชเฉเจฐเจเจคเฉเฅค เจ
เจเจฟเจนเจพ เจเจฐเจจ เจฒเจ, HTTP เจเฉฐเจเจฐเจซเฉเจธ เจตเจฟเฉฑเจ เจเฉฑเจ เจชเฉเจฐเจพเจฎเฉเจเจฐ เจนเฉ เจเฉ เจคเฉเจนเจพเจจเฉเฉฐ HTTP เจธเจฟเจฐเจฒเฉเจเจพเจ เจตเจฟเฉฑเจ เจคเจฐเฉฑเจเฉ เจญเฉเจเจฃ เจฆเฉ เจเจเจฟเจ เจฆเจฟเฉฐเจฆเจพ เจนเฉ: send_progress_in_http_headers=1
. เจฌเจฆเจเจฟเจธเจฎเจคเฉ เจจเจพเจฒ, เจฎเจฟเจเจฐเฉ เจเฉ เจฒเจพเจเจฌเฉเจฐเฉเจฐเฉ เจธเจฟเจฐเจฒเฉเจเจพเจ เจจเฉเฉฐ เจชเฉเฉเจน เจจเจนเฉเจ เจธเจเจฆเฉ เจเจฟเจเจเจเจฟ เจเจน เจชเฉเจฐเจพเจชเจค เจนเฉเจ เจนเจจ, เจชเจฐ HTTP 1.0 เจเฉฐเจเจฐเจซเฉเจธ (1.1 เจจเจพเจฒ เจเจฒเจเจฃ เจตเจฟเฉฑเจ เจจเจนเฉเจ!) เจเจฒเจฟเจเจนเจพเจเจธ เจฆเฉเจเจฐเจพ เจธเจฎเจฐเจฅเจฟเจค เจนเฉ, เจเจธเจฒเจ เจคเฉเจธเฉเจ เจเจฒเจฟเจเจนเจพเจเจธ เจฒเจ เจเฉฑเจ เจเฉฑเจเจพ TCP เจเจจเฉเจเจธเจผเจจ เจเฉเจฒเฉเจน เจธเจเจฆเฉ เจนเฉ เจ
เจคเฉ เจเจธเจจเฉเฉฐ เจเฉฑเจฅเฉ เจญเฉเจ เจธเจเจฆเฉ เจนเฉเฅค GET /?query=... HTTP/1.0nn
เจ
เจคเฉ เจฌเจฟเจจเจพเจ เจเจฟเจธเฉ เจฌเจเจฃ เจเจพเจ เจเจจเจเฉเจฐเจฟเจชเจธเจผเจจ เจฆเฉ เจเจตเจพเจฌ เจธเจฟเจฐเจฒเฉเจ เจ
เจคเฉ เจฌเจพเจกเฉ เจชเฉเจฐเจพเจชเจค เจเจฐเฉ, เจเจธ เจฒเจ เจเจธ เจธเจฅเจฟเจคเฉ เจตเจฟเฉฑเจ เจธเจพเจจเฉเฉฐ เจฎเจฟเจเจฐเฉ เจฒเจพเจเจฌเฉเจฐเฉเจฐเฉ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจจ เจฆเฉ เจตเฉ เจฒเฉเฉ เจจเจนเฉเจ เจนเฉเฅค
เจเจฒเจฟเจเจนเจพเจเจธ เจคเฉเจ เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ เจฒเฉเจเจธ
เจเจฒเจฟเจเจนเจพเจเจธ เจเฉเจฒ เจฎเฉเจเจพเจฌเจฒเจคเจจ เจฒเฉฐเจฌเฉ เจธเจฎเฉเจ (2019 เจคเฉเจ?) เจฒเจ ORDER BY เจจเจพเจฒ เจชเฉเฉฑเจเจเจฟเฉฑเจเจพเจ เจฒเจ เจ เจจเฉเจเฉเจฒเจคเจพ เจนเฉ, เจเจธ เจฒเจ เจเฉฑเจ เจชเฉเฉฑเจเจเจฟเฉฑเจ เจตเจฐเจเฉ
SELECT time, millis, message
FROM logs
WHERE message LIKE '%something%'
ORDER BY time DESC, millis DESC
เจเจน เจคเฉเจฐเฉฐเจค เจเจนเจจเจพเจ เจฒเจพเจเจจเจพเจ เจจเฉเฉฐ เจตเจพเจชเจธ เจเจฐเจจเจพ เจธเจผเฉเจฐเฉ เจเจฐ เจฆเฉเจตเฉเจเจพ เจเจฟเจจเฉเจนเจพเจ เจฆเฉ เจธเฉเจจเฉเจนเฉ เจตเจฟเฉฑเจ เจธเจฌเจธเจเจฐเจฟเฉฐเจ "เจเฉเจ" เจนเฉ, เจธเจเฉเจจ เจฆเฉ เจชเฉเจฐเจพ เจนเฉเจฃ เจฆเฉ เจเจกเฉเจ เจเฉเจคเฉ เจฌเจฟเจจเจพเจเฅค
เจจเจพเจฒ เจนเฉ, เจเจน เจฌเจนเฉเจค เจธเฉเจตเจฟเจงเจพเจเจจเจ เจนเฉเจตเฉเจเจพ เจเฉเจเจฐ เจเจฒเจฟเจเจนเจพเจเจธ เจเฉเจฆ เจนเฉ เจฌเฉเจจเจคเฉ เจจเฉเฉฐ เจฐเฉฑเจฆ เจเจฐ เจฆเจฟเฉฐเจฆเจพ เจนเฉ เจเจฆเฉเจ เจเจธเจฆเจพ เจเจจเฉเจเจธเจผเจจ เจฌเฉฐเจฆ เจนเฉ เจเจฟเจ เจธเฉ, เจชเจฐ เจเจน เจกเจฟเจซเฉเจฒเจ เจตเจฟเจตเจนเจพเจฐ เจจเจนเฉเจ เจนเฉเฅค เจตเจฟเจเจฒเจช เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจเจเฉเจฎเฉเจเจฟเจ เจฌเฉเจจเจคเฉ เจฐเฉฑเจฆ เจเจฐเจจ เจจเฉเฉฐ เจธเจฎเจฐเฉฑเจฅ เจเฉเจคเจพ เจเจพ เจธเจเจฆเจพ เจนเฉ cancel_http_readonly_queries_on_client_close=1
.
เจเฉ เจตเจฟเฉฑเจ SIGPIPE เจฆเจพ เจธเจนเฉ เจชเฉเจฐเจฌเฉฐเจงเจจ
เจเจฆเฉเจ เจคเฉเจธเฉเจ เจเจฒเจพเจเจเจฆเฉ เจนเฉ, เจคเจพเจ เจเจฎเจพเจเจก เจเจนเฉ some_cmd | head -n 10
, เจฌเจฟเจฒเจเฉเจฒ เจเจฟเจตเฉเจ เจนเฉเจเจฎ เจนเฉ some_cmd
เจเจเจเจผเฉเจเจฟเจเจธเจผเจจ เจจเฉเฉฐ เจฐเฉเจเจฆเจพ เจนเฉ เจเจฆเฉเจ head
10 เจฒเจพเจเจจเจพเจ เจเจเจพเจเจเจ? เจเจตเจพเจฌ เจธเจงเจพเจฐเจจ เจนเฉ: เจเจฆเฉเจ head
เจเจคเจฎ เจนเฉเฉฐเจฆเจพ เจนเฉ, เจชเจพเจเจช เจฌเฉฐเจฆ เจนเฉ เจเจพเจเจฆเฉ เจนเฉ, เจ
เจคเฉ some_cmd เจเจฎเจพเจเจก เจฆเจพ stdout, เจธเจผเจฐเจค เจ
เจจเฉเจธเจพเจฐ, "เจเจฟเจคเฉ เจตเฉ เจจเจนเฉเจ" เจตเฉฑเจฒ เจเจธเจผเจพเจฐเจพ เจเจฐเจจเจพ เจธเจผเฉเจฐเฉ เจเจฐเจฆเจพ เจนเฉเฅค เจเจฆเฉเจ some_cmd
เจเฉฑเจ เจฌเฉฐเจฆ เจชเจพเจเจช เจจเฉเฉฐ เจฒเจฟเจเจฃ เจฆเฉ เจเฉเจธเจผเจฟเจธเจผ เจเจฐเจฆเจพ เจนเฉ,
เจเฉ เจตเจฟเฉฑเจ เจเจน เจกเจฟเจซเฉเจฒเจ เจฐเฉเจช เจตเจฟเฉฑเจ เจตเฉ เจนเฉเฉฐเจฆเจพ เจนเฉ, เจชเจฐ SIGPIPE เจธเจฟเจเจจเจฒ เจนเฉเจเจกเจฒเจฐ เจ เฉฐเจค เจตเจฟเฉฑเจ "เจธเจฟเจเจจเจฒ: SIGPIPE" เจเจพเจ เจเฉฑเจ เจธเจฎเจพเจจ เจธเฉเจจเฉเจนเจพ เจตเฉ เจชเฉเจฐเจฟเฉฐเจ เจเจฐเจฆเจพ เจนเฉ, เจ เจคเฉ เจเจธ เจธเฉเจจเฉเจนเฉ เจจเฉเฉฐ เจธเจพเจซเจผ เจเจฐเจจ เจฒเจ เจธเจพเจจเฉเฉฐ SIGPIPE เจจเฉเฉฐ เจเจชเจฃเฉ เจเจช เจจเฉเฉฐ เจเจธเฉ เจคเจฐเฉเจนเจพเจ เจธเฉฐเจญเจพเจฒเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉ เจเจฟเจตเฉเจ เจ เจธเฉเจ เจเจพเจนเฉเฉฐเจฆเฉ เจนเจพเจ, เจญเจพเจต, เจเฉเฉฑเจชเจเจพเจชเฅค เจจเจฟเจเจพเจธ:
ch := make(chan os.Signal)
signal.Notify(ch, syscall.SIGPIPE)
go func() {
<-ch
os.Exit(0)
}()
เจธเฉเจจเฉเจนเจพ เจธเฉฐเจฆเจฐเจญ เจฆเจฟเจเจพเจ
เจ
เจเจธเจฐ เจคเฉเจธเฉเจ เจเจธ เจธเฉฐเจฆเจฐเจญ เจจเฉเฉฐ เจฆเฉเจเจฃเจพ เจเจพเจนเฉเฉฐเจฆเฉ เจนเฉ เจเจฟเจธ เจตเจฟเฉฑเจ เจเฉเจ เจเจฒเจคเฉ เจเจ เจนเฉ (เจเจฆเจพเจนเจฐเจฃ เจฒเจ, เจเจฟเจนเฉเฉ เจฌเฉเจจเจคเฉ เจเจพเจฐเจจ เจเจฌเจฐเจพเจนเจ เจชเฉเจฆเจพ เจนเฉเจ, เจเจพเจ เจเจฐเฉเจธเจผ เจคเฉเจ เจชเจนเจฟเจฒเจพเจ เจเจฟเจนเฉเฉเจเจ เจธเฉฐเจฌเฉฐเจงเจฟเจค เจธเจฎเฉฑเจธเจฟเจเจตเจพเจ เจฆเจฟเจเจพเจ เจฆเฉ เจฐเจนเฉเจเจ เจธเจจ), เจ
เจคเฉ เจตเจฟเฉฑเจ grep
เจเจน -A, -B, เจ
เจคเฉ -C เจตเจฟเจเจฒเจชเจพเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจเฉเจคเจพ เจเจพเจเจฆเจพ เจนเฉ, เจเฉ เจเฉเจฐเจฎเจตเจพเจฐ เจธเฉเจจเฉเจนเฉ เจฆเฉ เจฌเจพเจ
เจฆ, เจชเจนเจฟเจฒเจพเจ เจ
เจคเฉ เจเจฒเฉ-เจฆเฉเจเจฒเฉ เจฒเจพเจเจจเจพเจ เจฆเฉ เจจเจฟเจฐเจงเจพเจฐเจค เจธเฉฐเจเจฟเจ เจจเฉเฉฐ เจฆเจฐเจธเจพเจเจเจฆเฉ เจนเจจเฅค
เจฌเจฆเจเจฟเจธเจฎเจคเฉ เจจเจพเจฒ, เจฎเฉเจจเฉเฉฐ เจเจฒเจฟเจเจนเจพเจเจธ เจตเจฟเฉฑเจ เจ เจเจฟเจนเจพ เจเจฐเจจ เจฆเจพ เจเฉเจ เจเจธเจพเจจ เจคเจฐเฉเจเจพ เจจเจนเฉเจ เจฎเจฟเจฒเจฟเจ เจนเฉ, เจเจธเจฒเจ เจธเฉฐเจฆเจฐเจญ เจจเฉเฉฐ เจชเฉเจฐเจฆเจฐเจธเจผเจฟเจค เจเจฐเจจ เจฒเจ, เจเจธ เจคเจฐเฉเจนเจพเจ เจฆเฉ เจเฉฑเจ เจตเจพเจงเฉ เจฌเฉเจจเจคเฉ เจจเจคเฉเจเฉ เจฆเฉ เจนเจฐเฉเจ เจฒเจพเจเจจ เจจเฉเฉฐ เจญเฉเจเฉ เจเจพเจเจฆเฉ เจนเฉ (เจตเฉเจฐเจตเฉ เจเจพเจเจเฉ 'เจคเฉ เจจเจฟเจฐเจญเจฐ เจเจฐเจฆเจพ เจนเฉ เจ เจคเฉ เจเฉ เจธเฉฐเจฆเจฐเจญ เจชเจนเจฟเจฒเจพเจ เจฆเจฟเจเจพเจเจ เจเจฟเจ เจนเฉเฅค เจเจพเจ เจฌเจพเจ เจฆ):
SELECT time,millis,review_body FROM amazon
WHERE (time = 'ะะ ะะะฏ_ะกะะะซะขะะฏ' AND millis < ะะะะะะกะะะฃะะะซ_ะกะะะซะขะะฏ) OR (time < 'ะะ ะะะฏ_ะกะะะซะขะะฏ')
ORDER BY time DESC, millis DESC
LIMIT ะะะะะงะะกะขะะ_ะกะขะ ะะ_ะะะะขะะะกะขะ
SETTINGS max_threads=1
เจเจฟเจเจเจเจฟ เจฌเฉเจจเจคเฉ เจจเฉเฉฐ เจเจฒเจฟเจเจนเจพเจเจธ เจฆเฉเจเจฐเจพ เจธเฉฐเจฌเฉฐเจงเจฟเจค เจฒเจพเจเจจ เจตเจพเจชเจธ เจเจฐเจจ เจคเฉเจ เจคเฉเจฐเฉฐเจค เจฌเจพเจ เจฆ เจญเฉเจเจฟเจ เจเจพเจเจฆเจพ เจนเฉ, เจเจน เจเฉเจธเจผ เจตเจฟเฉฑเจ เจเจคเจฎ เจนเฉเฉฐเจฆเจพ เจนเฉ เจ เจคเฉ เจเจฎ เจคเฉเจฐ 'เจคเฉ เจฌเฉเจจเจคเฉ เจฌเจนเฉเจค เจคเฉเจเจผเฉ เจจเจพเจฒ เจเจฒเจพเจ เจเจพเจเจฆเฉ เจนเฉ เจ เจคเฉ เจฅเฉเฉเจพ เจเจฟเจนเจพ CPU เจเจชเจค เจเจฐเจฆเฉ เจนเฉ (เจเจฎ เจคเฉเจฐ 'เจคเฉ เจฎเฉเจฐเฉ เจตเจฐเจเฉเจ เจฒ เจฎเจธเจผเฉเจจ 'เจคเฉ เจฌเฉเจจเจคเฉ เจฒเจเจญเจ ~ 6 ms เจฒเฉเจเจฆเจพ เจนเฉ)เฅค
เจฐเฉเจ เจฒ เจเจพเจเจฎ เจตเจฟเฉฑเจ เจจเจตเฉเจ เจธเฉเจจเฉเจนเฉ เจฆเจฟเจเจพเจ
เจเจเจฃ เจตเจพเจฒเฉ เจธเฉเจจเฉเจนเจฟเจเจ เจจเฉเฉฐ (เจฒเจเจญเจ) เจฐเฉเจ เจฒ เจเจพเจเจฎ เจตเจฟเฉฑเจ เจฆเจฟเจเจพเจเจฃ เจฒเจ, เจ เจธเฉเจ เจนเจฐ เจเฉเจ เจธเจเจฟเฉฐเจเจพเจ เจตเจฟเฉฑเจ เจเฉฑเจ เจตเจพเจฐ เจฌเฉเจจเจคเฉ เจจเฉเฉฐ เจฒเจพเจเฉ เจเจฐเจฆเฉ เจนเจพเจ, เจชเจฟเจเจฒเฉ เจเจพเจเจฎเจธเจเฉเจเจช เจจเฉเฉฐ เจฏเจพเจฆ เจเจฐเจฆเฉ เจนเฉเจ เจเจฟเจธเจฆเจพ เจ เจธเฉเจ เจชเจนเจฟเจฒเจพเจ เจธเจพเจนเจฎเจฃเจพ เจเฉเจคเจพ เจธเฉเฅค
เจเจฎเจพเจเจก เจฆเฉเจเจ เจเจฆเจพเจนเจฐเจฃเจพเจ
เจ เจญเจฟเจเจธ เจตเจฟเฉฑเจ เจเจฎ logscli เจเจฎเจพเจเจกเจพเจ เจเจฟเจตเฉเจ เจฆเจฟเจเจพเจ เจฆเจฟเฉฐเจฆเฉเจเจ เจนเจจ?
เจเฉ เจคเฉเจธเฉเจ เจเจฎเจพเจเจผเจพเจจ เจกเฉเจเจพเจธเฉเจ เจจเฉเฉฐ เจกเจพเจเจจเจฒเฉเจก เจเฉเจคเจพ เจนเฉ เจเจฟเจธเจฆเจพ เจฎเฉเจ เจฒเฉเจ เจฆเฉ เจธเจผเฉเจฐเฉ เจตเจฟเฉฑเจ เจเจผเจฟเจเจฐ เจเฉเจคเจพ เจนเฉ, เจคเจพเจ เจคเฉเจธเฉเจ เจนเฉเจ เจฒเจฟเจเฉเจเจ เจเจฎเจพเจเจกเจพเจ เจเจฒเจพ เจธเจเจฆเฉ เจนเฉ:
# ะะพะบะฐะทะฐัั ัััะพะบะธ, ะณะดะต ะฒัััะตัะฐะตััั ัะปะพะฒะพ walmart
$ logscli -F 'walmart' | less
# ะะพะบะฐะทะฐัั ัะฐะผัะต ัะฒะตะถะธะต 10 ัััะพะบ, ะณะดะต ะฒัััะตัะฐะตััั "terrible"
$ logscli -F terrible -limit 10
# ะขะพ ะถะต ัะฐะผะพะต ะฑะตะท -limit:
$ logscli -F terrible | head -n 10
# ะะพะบะฐะทะฐัั ะฒัะต ัััะพะบะธ, ะฟะพะดั
ะพะดััะธะต ะฟะพะด /times [0-9]/, ะฝะฐะฟะธัะฐะฝะฝัะต ะดะปั vine ะธ ั ะบะพัะพััั
ะฒััะพะบะธะน ัะตะนัะธะฝะณ
$ logscli -E 'times [0-9]' -where="vine='Y' AND star_rating>4" | less
# ะะพะบะฐะทะฐัั ะฒัะต ัััะพะบะธ ัะพ ัะปะพะฒะพะผ "panic" ะธ 3 ัััะพะบะธ ะบะพะฝัะตะบััะฐ ะฒะพะบััะณ
$ logscli -F 'panic' -C 3 | less
# ะะตะฟัะตััะฒะฝะพ ะฟะพะบะฐะทัะฒะฐัั ะฝะพะฒัะต ัััะพะบะธ ัะพ ัะปะพะฒะพะผ "5-star"
$ logscli -F '5-star' -tailf
เจนเจตเจพเจฒเฉ
เจเจชเจฏเฉเจเจคเจพ เจเฉเจก (เจฆเจธเจคเจพเจตเฉเจเจผเจพเจ เจคเฉเจ เจฌเจฟเจจเจพเจ) github 'เจคเฉ เจเจชเจฒเจฌเจง เจนเฉ
เจธเจฐเฉเจค: www.habr.com