오류 개체 실패?

5211 단어 coffee-resque

묘사

오류가 발생했을 때, 나는 리셋에 무엇을 전달해야 합니까?표준 오류 대상을 전달하려고 시도했지만, 분명히 coffee resque는 오류 대상에 존재하지 않는 속성 (오류, 이상, 거슬러 올라가기) 을 기대합니다.
> new Error('error');
{ stack: [Getter/Setter],
  arguments: undefined,
  type: undefined,
  message: 'error' } 
색인커피
  failurePayload: (err, job) ->
    worker:    @name
    error:     err.error or 'unspecified'
    payload:   job
    exception: err.exception or 'generic'
    backtrace: err.backtrace or ['unknown']
    failed_at: (new Date).toString()

토론 #1

표준오차obj는expected이다.지적하신 바와 같이 고장 목록에 기록된 내용이 잘못되었습니다.나는 방금 실패 목록을 검사했는데, 사실상 오류, 이상, 회고는 모든 항목에서 무의미하다.단, 유효 부하 속성은 괜찮아 보인다.)
나는 오늘 밤이나 내일 이 일과 npm의 일을 조사할 수 있다.

토론 #2

나는 잘못을 끼워 넣을 것이지, 예전처럼 밭을 평평하게 하는 것이 아니다.
  failurePayload: (err, job) ->
    worker:    @name
    job:       job
    error:     err
    failed_at: (new Date).toString()
반대 의견이 있습니까?

토론 #셋

사실 나는 이것이 가장 좋은 답이라고 확신하지 못한다.Ruby Resque 프런트엔드를 사용하여 노드 큐를 포함한 모든 Resque 큐를 모니터링하고 관리하고 있습니다. 이렇게 하면 API를 변경하는 데 많은 문제가 발생합니다.다음은 defunkt/resque에서 실패한 객체입니다.
https://github.com/defunkt/resque/blob/master/lib/resque/failure/redis.rb#L7-15
data = {
  :failed_at => Time.now.strftime("%Y/%m/%d %H:%M:%S"),
  :payload   => payload,
  :exception => exception.class.to_s,
  :error     => exception.to_s,
  :backtrace => Array(exception.backtrace),
  :worker    => worker.to_s,
  :queue     => queue
}
예를 들면 다음과 같습니다.
아, 반갑습니다.이것 말고 루비 프런트엔드도 호환 가능한가요?나는 아직 해 본 적이 없다.

토론 #4

네, 제가 알기로는 감시 작업이 정상적으로 작동할 수 있다(고장을 보면 거의 정상적으로 작동할 수 있다...거슬러 올라가면 하나의 수조일 것이다).나는 다시 줄을 서려고 시도하지 않았지만, 만약 작업이 Redis의 대기열로 옮겨진다면, 그것은 정상적으로 작동할 수 있을 것이다.
겸사겸사 한마디 하자면, 나는 위에서 건의한 오류 ("유효 하중: job"이 아니라 "job: job") 를 수정했다.또한 Ruby Resque에서 거슬러 올라가는 것은 하나의 배열이지만 오류가 있다는 점도 주의해야 한다.스택은 문자열이므로 "\n"(더 좋음?)에서 분할하거나아니면 그것을 하나의 수조로 포장해라.
도움이 되는 경우 Resque 프런트엔드 장애 뷰relevant lines:
failurePayload: (err, job) ->
  worker:     @name
  queue:      @queue
  payload:        job
  exception:  'Error'
  error:      err.toString()
  backtrace:  [err.stack]
  failed_at:  (new Date).toString()

토론 #5

완벽해, 내 것 같아.

토론 #6

우리는 헤어질 수 있다.내가 한 번 봤는데 css 만약에 우리가 궤적을 분할한다면 각 선(변거리와 선 높이)에 대한 우리의 견해가 더욱 일치할 것 같다.

토론 #7

검사this.나는 coffee resque로 나의 프로젝트에 대해 테스트를 진행하였는데, 결과는 성공하였다.빌어먹을 npm는 이미 많이 바뀌었어. 더 나은 것을 위해서 내가 한마디 더 보충할 수 있어.로컬 모드를 아주 좋아해요.

토론 #8

아주 멋있어요.Coffeescript에는 큰따옴표가 없습니까?나는 그것에 대해 그리 익숙하지 않아서 모르겠지만, 그것은 나에게 매우 두드러진다.
예, 우리는 줄곧 npmv1을 사용하고 있습니다.0.1rc9, 몇 주 동안 지속된 후 연애를 시작합니다

토론 #9

.그것은 개발을 더욱 쉽게 한다.npm link 이 예에서는 매개 변수 목록일 뿐이고 생성된 js는 다음과 같다.
<dt>Class</dt>
<dd><code><%= job['payload'] ? job['payload']['class'] : 'nil' %></code></dd>
<dt>Arguments</dt>
<dd><pre><%=h job['payload'] ? show_args(job['payload']['args']) : 'nil' %></pre></dd>
<dt>Exception</dt>
<dd><code><%= job['exception'] %></code></dd>
<dt>Error</dt>
<dd class='error'>
  <% if job['backtrace'] %>
    <a href="#" class="backtrace"><%= h(job['error']) %></a>
    <pre style='display:none'><%=h job['backtrace'].join("\n") %></pre>
  <% else %>
    <%=h job['error'] %>
  <% end %>
</dd>
나는 커피를 정말 좋아한다.어쨌든 나는 v1을 쓴다.게시에는 0.1rcFINAL 이 사용됩니다.v1의 델타를 더 잘 이해하기 위해서, 나는 다른 항목에 약간의 시간을 들여야 한다.0.x.
어떤 상황에서든지, 기회가 있으면 나에게 어떤 피드백을 주어라.이것이 너의 문제를 해결할 수 있기를 바란다.나는 내일 루비 앞부분을 시험해 보려고 한다.이 문제들에 대한 당신의 도움에 감사 드립니다.
l8r

토론 #10

괜찮다
이거 대박이다.창고 꼭대기의 중복 오류가 좀 짜증나지만 걱정할 필요는 없을 것 같습니다.
감사합니다!이런 게 있기를 기대해...아니, 네가 옳은 것 같아.ui를 시험적으로 사용하기 전에, 나는 약속한 적이 있다.나는 아침까지 다른 버전을 내놓을 것이다.

토론 #11

v0에서 다시 발표하고 다시 표시합니다.1.3

좋은 웹페이지 즐겨찾기