數(shù)倉(cāng)學(xué)習(xí)中給自己總結(jié)一下:
主要接觸了三種Source:Exec Source 异雁、Spooling Directory Source和Taildir Source。
Exec Source
Exec Source可通過(guò)tail -f命令去tail住一個(gè)文件芯杀,然后實(shí)時(shí)同步日志到sink。
但存在的問(wèn)題是雅潭,當(dāng)agent進(jìn)程掛掉重啟后揭厚,會(huì)有重復(fù)消費(fèi)的問(wèn)題。
Spooling Directory Source
Spooling Directory Source可監(jiān)聽(tīng)一個(gè)目錄扶供,同步目錄中的新文件到sink,被同步完的文件可被立即刪除或被打上標(biāo)記筛圆。
適合用于同步新文件,但不適合對(duì)實(shí)時(shí)追加日志的文件進(jìn)行監(jiān)聽(tīng)并同步椿浓。
如果需要實(shí)時(shí)監(jiān)聽(tīng)追加內(nèi)容的文件太援,可對(duì)SpoolDirectorySource進(jìn)行改進(jìn)。
Taildir Source
Taildir Source可實(shí)時(shí)監(jiān)控一批文件扳碍,并記錄每個(gè)文件最新消費(fèi)位置提岔,agent進(jìn)程重啟后不會(huì)有重復(fù)消費(fèi)的問(wèn)題。
使用時(shí)建議用1.8.0版本的flume笋敞,1.8.0版本中解決了Taildir Source一個(gè)可能會(huì)丟數(shù)據(jù)的bug
Exec source 適用于監(jiān)控一個(gè)實(shí)時(shí)追加的文件唧垦,但不能保證數(shù)據(jù)不丟失;Spooldir
Source 能夠保證數(shù)據(jù)不丟失液样,且能夠?qū)崿F(xiàn)斷點(diǎn)續(xù)傳,但延遲較高巧还,不能實(shí)時(shí)監(jiān)控鞭莽;而 Taildir
Source 既能夠?qū)崿F(xiàn)斷點(diǎn)續(xù)傳,又可以保證數(shù)據(jù)不丟失麸祷,還能夠進(jìn)行實(shí)時(shí)監(jiān)控澎怒。