[
https://issues.apache.org/jira/browse/QPID-8472?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17208630#comment-17208630
]
ASF GitHub Bot commented on QPID-8472:
--------------------------------------
alex-rufous commented on a change in pull request #63:
URL: https://github.com/apache/qpid-broker-j/pull/63#discussion_r500150280
##########
File path:
broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java
##########
@@ -3520,23 +3520,52 @@ public MessageEnqueueRecord getEnqueueRecord()
destination,
parseSelector(selector),
limit);
- _virtualHost.executeTransaction(transaction);
+ performOperationWithLogging("Copy",destination, transaction);
return transaction.getModifiedMessageIds();
}
+ private void performOperationWithLogging(final String msg,final Queue<?>
destination, final QueueSizeLimitRespectingTransaction transaction)
+ {
+ String status = "FAILED";
+ try
+ {
+ _virtualHost.executeTransaction(transaction);
+ status = "SUCCESS";
+ }
+ finally
+ {
+ logOperation(String.format(msg+"Messages
:source-%s:target-%s:messagecount-%d:status-%s",
Review comment:
I would like to suggest to simplify the operational log messages as below
` logOperation(String.format("%s messages : %s : %s : %d",
operationName,
getName(),
destination.getName(),
transaction.getModifiedMessageIds().size(),
status));`
##########
File path:
broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java
##########
@@ -3520,23 +3520,52 @@ public MessageEnqueueRecord getEnqueueRecord()
destination,
parseSelector(selector),
limit);
- _virtualHost.executeTransaction(transaction);
+ performOperationWithLogging("Copy",destination, transaction);
return transaction.getModifiedMessageIds();
}
+ private void performOperationWithLogging(final String msg,final Queue<?>
destination, final QueueSizeLimitRespectingTransaction transaction)
+ {
+ String status = "FAILED";
Review comment:
Let's drop status
##########
File path:
broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java
##########
@@ -3520,23 +3520,52 @@ public MessageEnqueueRecord getEnqueueRecord()
destination,
parseSelector(selector),
limit);
- _virtualHost.executeTransaction(transaction);
+ performOperationWithLogging("Copy",destination, transaction);
return transaction.getModifiedMessageIds();
}
+ private void performOperationWithLogging(final String msg,final Queue<?>
destination, final QueueSizeLimitRespectingTransaction transaction)
+ {
+ String status = "FAILED";
+ try
+ {
+ _virtualHost.executeTransaction(transaction);
+ status = "SUCCESS";
+ }
+ finally
+ {
+ logOperation(String.format(msg+"Messages
:source-%s:target-%s:messagecount-%d:status-%s",
+ getName(),
+ destination.getName(),
+
transaction.getModifiedMessageIds().size(),
+ status));
+ }
+ }
+
@Override
public List<Long> deleteMessages(final List<Long> messageIds, final String
selector, int limit)
{
DeleteMessagesTransaction transaction = new
DeleteMessagesTransaction(this,
messageIds,
parseSelector(selector),
limit);
- _virtualHost.executeTransaction(transaction);
-
+ String status = "FAILED";
Review comment:
The code seems duplicate. We should re-use the method introduced above
##########
File path:
broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java
##########
@@ -3520,23 +3520,52 @@ public MessageEnqueueRecord getEnqueueRecord()
destination,
parseSelector(selector),
limit);
- _virtualHost.executeTransaction(transaction);
+ performOperationWithLogging("Copy",destination, transaction);
return transaction.getModifiedMessageIds();
}
+ private void performOperationWithLogging(final String msg,final Queue<?>
destination, final QueueSizeLimitRespectingTransaction transaction)
Review comment:
I would like to suggest renaming this method into
executeTransactionAndLogResults
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
> [Broker-J] Improve operational logging for queue operations copying, moving
> and deleting messages
> -------------------------------------------------------------------------------------------------
>
> Key: QPID-8472
> URL: https://issues.apache.org/jira/browse/QPID-8472
> Project: Qpid
> Issue Type: Improvement
> Components: Broker-J
> Reporter: Alex Rudyy
> Priority: Major
> Fix For: qpid-java-broker-8.0.2, qpid-java-broker-7.1.10
>
>
> An operation logging for queue message management operations (copyMessages,
> moveMessages, deleteMessages, clearQueue) need to report a name of source
> queue , a target queue name (if applicable), a number of copied/moved/deleted
> messages and operation status.
> The operational logs could be formatted as below
> {noformat}
> <operation name> : <source queue name> : <target queue name> : <number of
> message> : <status>
> {noformat}
> For example,
> {noformat}
> copy messages : foo : bar : 100
> {noformat}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]