0

私はcoffeescriptでhttpリクエストを処理しようとしていますが、サーバーがダウンしている場合、アプリは以下のエラーで停止し、適切な解決策を見つけることができません.

コード:

 http.get "http://localhost:8080/health", (res) ->
        status =  res.statusCode
        value = if status == 200 then 1 else 0
        console.log value
        server.push_metric metricPrefix , value
        res.on 'error', () ->
          colsone.log "Tomcat Disconected"

エラー:

events.js:71
        throw arguments[1]; // Unhandled 'error' event
                       ^
Error: connect ECONNREFUSED
    at errnoException (net.js:770:11)
    at Object.afterConnect [as oncomplete] (net.js:761:19)
4

1 に答える 1

1

別のイベント ハンドラーでエラーを積極的にリッスンする必要があると思います。現在、イベント ハンドラーを応答 ( res) にアタッチしていますが、それは要求オブジェクト自体にアタッチする必要があります。ドキュメントを参照してください。

req = http.get "http://localhost:8080/health", (res) ->
  status = res.statusCode
  value = if status == 200 then 1 else 0
  console.log value
  server.push_metric metricPrefix , value

req.on 'error', ->
  console.log "Tomcat Disconected"

また、現在のエラー ハンドラにタイプミスがあります。colsone.log

于 2013-04-09T16:19:36.800 に答える