오류 개체 실패?
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.3Reference
이 문제에 관하여(오류 개체 실패?), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://github.com/technoweenie/coffee-resque/issues/11텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)