プロジェクト

全般

プロフィール

バグ #6838

クロール中にエラーが発生する

直野 雄一13日前に追加. 12日前に更新.

ステータス:
終了
優先度:
通常
担当者:
-
開始日:
2019-03-12
期日:
進捗率:

0%

予定工数:
Issue Tracker:

履歴

#1 直野 雄一13日前に更新

よく考えたらクロール中に例外が発生することは問題じゃない。続行するから。

何も異常ログが出ていないのに突然処理がエラー終了したことが問題。

raspiサーバーではリソースが不足していたか?DigitalOceanサーバーで処理を実行してみる。

#2 直野 雄一13日前に更新

DigitalOceanサーバーで実行したが、同様に突然終了した。エラーログもなし。リソースもわずかしか消費していない。

ソースコードにbegin rescue ensureを追加して、再実行中。

#3 直野 雄一12日前に更新

パース中にNoMethodErrorでクラッシュした。

D, [2019-03-13T12:35:38.507264 #10150] DEBUG -- : Engine#crawl: target_url=https://keiba.yahoo.co.jp/directory/horse/2014190002/
D, [2019-03-13T12:35:38.507289 #10150] DEBUG -- : Engine#find_parser: start: url=https://keiba.yahoo.co.jp/directory/horse/2014190002/
D, [2019-03-13T12:35:38.507361 #10150] DEBUG -- : Engine#find_parser: parser=[/^https:\/\/keiba\.yahoo\.co\.jp\/directory\/horse\/\d+\/$/, ScoringHorseRacing::Parser::HorsePageParser]
D, [2019-03-13T12:35:38.507385 #10150] DEBUG -- : Engine#get_latest_data_from_storage: start: url=https://keiba.yahoo.co.jp/directory/horse/2014190002/
D, [2019-03-13T12:35:38.507455 #10150] DEBUG -- : ResourceRepository#get_s3_object: file_name=478d3cbaffe660d7e74fa9b0496b89aac915b4af2a8c7507a8a9775802e25e2c.data
D, [2019-03-13T12:35:38.507567 #10150] DEBUG -- : ResourceRepository#get_s3_object: getting
D, [2019-03-13T12:35:38.592563 #10150] DEBUG -- : ResourceRepository#get_s3_object: no such key
D, [2019-03-13T12:35:38.592648 #10150] DEBUG -- : Engine#download_or_redownload: start: url=https://keiba.yahoo.co.jp/directory/horse/2014190002/, parser=ScoringHorseRacing::Parser::HorsePageParser, data=
D, [2019-03-13T12:35:39.593783 #10150] DEBUG -- : Downloader#download_with_get: start: url=https://keiba.yahoo.co.jp/directory/horse/2014190002/
D, [2019-03-13T12:35:39.596409 #10150] DEBUG -- : Downloader#download_with_get: request start
D, [2019-03-13T12:35:40.232413 #10150] DEBUG -- : Downloader#download_with_get: request end: response=#<Net::HTTPOK:0x000056524f0c51a0>
D, [2019-03-13T12:35:40.232486 #10150] DEBUG -- : Downloader#download_with_get: status is success
I, [2019-03-13T12:35:40.232516 #10150]  INFO -- : HorsePageParser#initialize: start: url=https://keiba.yahoo.co.jp/directory/horse/2014190002/, data.size=34439
I, [2019-03-13T12:35:40.232544 #10150]  INFO -- : HorsePageParser#_parse: @horse_id=2014190002
I, [2019-03-13T12:35:40.237917 #10150]  INFO -- : HorsePageParser#_parse: @gender=[外]
I, [2019-03-13T12:35:40.238044 #10150]  INFO -- : HorsePageParser#_parse: @name=パヴェル
I, [2019-03-13T12:35:40.238281 #10150]  INFO -- : HorsePageParser#_parse: @date_of_birth=2014-04-23 00:00:00 +0000
I, [2019-03-13T12:35:40.238369 #10150]  INFO -- : HorsePageParser#_parse: @coat_color=芦毛
I, [2019-03-13T12:35:40.238510 #10150]  INFO -- : HorsePageParser#_parse: @trainer_id=05732
I, [2019-03-13T12:35:40.238652 #10150]  INFO -- : HorsePageParser#_parse: @related_links=["https://keiba.yahoo.co.jp/directory/trainer/05732/"]
I, [2019-03-13T12:35:40.238737 #10150]  INFO -- : HorsePageParser#_parse: @owner=レッダム・レーシング
E, [2019-03-13T12:35:40.238849 #10150] ERROR -- : #crawl: error
E, [2019-03-13T12:35:40.238872 #10150] ERROR -- : undefined method `text' for nil:NilClass (NoMethodError)
/var/myapp/lib/scoring_horse_racing/parser/horse_page.rb:98:in `block (2 levels) in _parse'

#4 直野 雄一12日前に更新

  • プロジェクトscoring-horse-racing から crawline に変更

crawline側で、クロール中の例外はCrawlineErrorしかrescueしておらず、想定外の例外はクラッシュしてしまう。しかし、可能な限り続行してほしい。

よって、全ての例外をrescueするように修正する。

#5 直野 雄一12日前に更新

  • ステータス新規 から 終了 に変更

リリースした。

他の形式にエクスポート: Atom PDF