本篇內(nèi)容介紹了“storm日志如何debug”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比下陸網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式下陸網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋下陸地區(qū)。費(fèi)用合理售后完善,十多年實(shí)體公司更值得信賴。
開發(fā)storm應(yīng)用時(shí)可能需要用到自身的配置文件。storm.yaml只能提供給storm自身的配置系統(tǒng)使用。針對后臺(tái)最廣泛使用的ini配置文件,推薦使用ini4j。它是一個(gè)輕量的ini配置文件讀取器、具有簡單易懂的api。
請?jiān)趕pout和bolt的prepare方法中讀取配置文件。任何資源類的初始化都需要放到prepare方法中(比如數(shù)據(jù)庫連接,和讀取文件索引類等)。
I 打包storm程序請不要把依賴打進(jìn)去,依賴需要單獨(dú)部署;
II 你需要一種有效的機(jī)制將程序的依賴包分發(fā)到所有的storm節(jié)點(diǎn)上(可上傳到nimbus,通過rsync做目錄同步);
III 你需要分發(fā)的依賴包集合=你的程序所有的依賴包集合 ? storm依賴包與你的依賴包的交集(否則topology會(huì)初始化失?。?/p>
IV 在所有supervisor節(jié)點(diǎn)上自定義配置文件的內(nèi)容和路徑需要完全一致,路徑不一致topology會(huì)初始化失敗,內(nèi)容不一致,程序的行為則是未定義的;
在經(jīng)過一番辛勤勞動(dòng)之后,你的程序編譯成功了。但是,這不代表著它會(huì)按照你設(shè)定的行為去運(yùn)行。如何debug成為了一個(gè)問題。
最基本也是最原始的思路就是log。在所有你認(rèn)為可能出錯(cuò)的地方log(尤其是在prepare方法中,這里通常做的是資源類的初始化,如果它們初始化失敗,topology則會(huì)初始化失敗,這樣能幫助你快速定位到錯(cuò)誤原因)。
Storm默認(rèn)與log4j集成。你可以再$STORM_HOME/log4j/目錄下找log4j的配置文件。通過調(diào)整它來控制log4j的行為。
不要急于在真實(shí)環(huán)境下部署你的程序。想要測試的話,還是首先在Local mode模式下觀察吧。如果在local mode下測試的結(jié)果是符合預(yù)期的,而在真實(shí)環(huán)境下出錯(cuò),一般應(yīng)是非代碼的因素造成的。你需要檢查節(jié)點(diǎn)的資源文件、自定義配置文件、依賴包等等。此外在local mode下,所有日志打印信息是直接輸出到屏幕上的,這樣方便你看的更加清楚。
下面介紹下storm日志的結(jié)構(gòu):
所有的日志文件都存放在$STORM_HOME/logs/路徑下。
在nimbus節(jié)點(diǎn)上:nimbus.log記錄的是nimbus啟動(dòng)過程中的輸出信息,包括啟動(dòng)時(shí)間和各個(gè)worker和task初始化過程中打印信息等等。ui.log則記錄的storm監(jiān)控程序啟動(dòng)過程中的輸出信息,包括啟動(dòng)時(shí)間等等。
在supervisor節(jié)點(diǎn)上:supervisor.log記錄的則是supervisor的相關(guān)啟動(dòng)信息。worker-XXX(一個(gè)supervisor節(jié)點(diǎn)通常部署了多個(gè)worker)記錄的是消息傳遞、和任務(wù)執(zhí)行過程中的輸出信息(也就是你代碼中的日志打印部分)。storm的設(shè)計(jì)目標(biāo)之一是讓任務(wù)(task)部署對用戶透明。這樣造成了:當(dāng)你需要觀察一個(gè)task的日志輸出信息時(shí),你不知道到哪個(gè)節(jié)點(diǎn)的哪個(gè)日志文件去找這個(gè)信息。因此,還是強(qiáng)烈建議在local mode下debug你的程序,然后在真實(shí)環(huán)境做好日志告警。
“storm日志如何debug”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
分享名稱:storm日志如何debug
網(wǎng)頁網(wǎng)址:http://www.rwnh.cn/article34/gcggpe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、做網(wǎng)站、網(wǎng)站設(shè)計(jì)、網(wǎng)頁設(shè)計(jì)公司、靜態(tài)網(wǎng)站、關(guān)鍵詞優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)