Skip to content

Commit 546bc09

Browse files
author
Michał Wójcik
authored
Adding retry button on one message (#672)
* Adding retry button on one message * Position retry btn * Showing the button only on hover * Changing the message to more generic
1 parent b397409 commit 546bc09

File tree

3 files changed

+51
-22
lines changed

3 files changed

+51
-22
lines changed

src/ServicePulse.Host/app/css/particular.css

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -596,12 +596,20 @@ p.metadata {
596596
margin-bottom: 6px;
597597
}
598598

599+
p.metadata button {
600+
position: absolute;
601+
right: -35px;
602+
top: 26px;
603+
}
604+
599605
span.metadata {
600606
display: inline-block;
601607
padding: 0px 20px 2px 0;
602608
color: #777f7f;
603609
}
604610

611+
612+
605613
.metadata:first-child {
606614
padding-left: 0;
607615
}

src/ServicePulse.Host/app/js/views/failed_messages/controller.js

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,27 @@
107107
vm.loadMoreResults(vm.selectedExceptionGroup);
108108
};
109109

110+
vm.viewMessage = function (message) {
111+
$location.path(`/failed-messages/message/${message.id}`);
112+
};
113+
114+
vm.retryMessage = function(message, $event) {
115+
toastService.showInfo("Message retry requested");
116+
serviceControlService.retryFailedMessages([message.id])
117+
.then(function() {
118+
var indexOfMessage = vm.selectedIds.indexOf(message.id);
119+
if (indexOfMessage) {
120+
vm.selectedIds.splice(indexOfMessage, 1);
121+
}
122+
123+
vm.failedMessages = vm.failedMessages.filter(function(item) {
124+
return item.id !== message.id;
125+
});
126+
}
127+
);
128+
$event.stopPropagation();
129+
};
130+
110131
vm.clipComplete = function(messageId) {
111132
toastService.showInfo(messageId + ' copied to clipboard');
112133
};

src/ServicePulse.Host/app/js/views/failed_messages/view.html

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -67,32 +67,32 @@ <h3 class="active group-title group-message-count">{{vm.selectedExceptionGroup.c
6767
<multi-checkboxlist messages="vm.failedMessages" selected-ids="vm.selectedIds" message="message" multiselection="vm.multiselection"></multi-checkboxlist>
6868

6969
<div class="col-xs-11 failed-message-data" ng-mouseenter="message.hover2 = true" ng-mouseleave="message.hover2 = false">
70-
<a href="#/failed-messages/message/{{message.id}}">
70+
71+
<div class="row" ng-class="{rowSelected: message.selected == true}" ng-click="vm.viewMessage(message)">
72+
<div class="col-sm-12">
73+
<div class="row box-header">
74+
<div class="col-sm-12 no-side-padding">
75+
<p class="lead break" ng-class="{'msg-type-hover': message.hover2}">{{message.message_type || 'Message Type Unknown - missing metadata EnclosedMessageTypes'}}</p>
76+
<p class="metadata">
77+
<span ng-if="message.retried" tooltip="Message is being retried" class="label sidebar-label label-info metadata-label">Retried</span>
78+
<span ng-if="message.archived" tooltip="Message is being archived" class="label sidebar-label label-warning metadata-label">Archived</span>
79+
<span ng-if="message.number_of_processing_attempts > 1" tooltip="This message has already failed {{message.number_of_processing_attempts}} times" class="label sidebar-label label-important metadata-label">{{message.number_of_processing_attempts}} Retry Failures</span>
80+
81+
<span class="metadata"><i class="fa fa-clock-o"></i> Failed: <sp-moment date="{{message.time_of_failure}}"></sp-moment></span>
82+
<span class="metadata"><i class="fa pa-endpoint"></i> Endpoint: {{message.receiving_endpoint.name}}</span>
83+
<span class="metadata"><i class="fa fa-laptop"></i> Machine: {{message.receiving_endpoint.host}}</span>
84+
<span class="metadata" ng-show="message.redirect"><i class="fa pa-redirect-source pa-redirect-small"></i> Redirect: {{message.redirect}}</span>
85+
<button type="button" class="btn btn-link btn-sm" ng-click="vm.retryMessage(message, $event)" ng-hide="!message.hover2" >
86+
<i aria-hidden="true" class="fa fa-repeat no-link-underline">&nbsp</i>Request retry
87+
</button>
88+
</p>
89+
90+
<pre class="stacktrace-preview" isolate-click ng-show="message.panel === 0">{{ message.exception.message }}</pre>
7191

72-
<div class="row" ng-class="{rowSelected: message.selected == true}">
73-
74-
<div class="col-sm-12">
75-
<div class="row box-header">
76-
<div class="col-sm-12 no-side-padding">
77-
<p class="lead break" ng-class="{'msg-type-hover': message.hover2}">{{message.message_type || 'Message Type Unknown - missing metadata EnclosedMessageTypes'}}</p>
78-
<p class="metadata">
79-
<span ng-if="message.retried" tooltip="Message is being retried" class="label sidebar-label label-info metadata-label">Retried</span>
80-
<span ng-if="message.archived" tooltip="Message is being archived" class="label sidebar-label label-warning metadata-label">Archived</span>
81-
<span ng-if="message.number_of_processing_attempts > 1" tooltip="This message has already failed {{message.number_of_processing_attempts}} times" class="label sidebar-label label-important metadata-label">{{message.number_of_processing_attempts}} Retry Failures</span>
82-
83-
<span class="metadata"><i class="fa fa-clock-o"></i> Failed: <sp-moment date="{{message.time_of_failure}}"></sp-moment></span>
84-
<span class="metadata"><i class="fa pa-endpoint"></i> Endpoint: {{message.receiving_endpoint.name}}</span>
85-
<span class="metadata"><i class="fa fa-laptop"></i> Machine: {{message.receiving_endpoint.host}}</span>
86-
<span class="metadata" ng-show="message.redirect"><i class="fa pa-redirect-source pa-redirect-small"></i> Redirect: {{message.redirect}}</span>
87-
</p>
88-
89-
<pre class="stacktrace-preview" isolate-click ng-show="message.panel === 0">{{ message.exception.message }}</pre>
90-
91-
</div>
9292
</div>
9393
</div>
9494
</div>
95-
</a>
95+
</div>
9696
</div>
9797
</div>
9898

0 commit comments

Comments
 (0)