|
@@ -0,0 +1,291 @@
|
|
|
+package cn.com.moonspeak.rabbitmq.monitor;
|
|
|
+
|
|
|
+import com.fasterxml.jackson.annotation.JsonProperty;
|
|
|
+import lombok.Data;
|
|
|
+import lombok.NoArgsConstructor;
|
|
|
+
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 队列明细
|
|
|
+ * @see https://www.rabbitmq.com/rabbitmqctl.8.html
|
|
|
+ * @author lisl
|
|
|
+ * @version 1.0 - 2023/3/1
|
|
|
+ * @class: MqQueueItemInfo
|
|
|
+ * @date 2023/3/1
|
|
|
+ * @see
|
|
|
+ */
|
|
|
+@NoArgsConstructor
|
|
|
+@Data
|
|
|
+public class MqQueueItemPageInfo {
|
|
|
+
|
|
|
+ @JsonProperty("filtered_count")
|
|
|
+ private Integer filteredCount;
|
|
|
+ @JsonProperty("item_count")
|
|
|
+ private Integer itemCount;
|
|
|
+ @JsonProperty("items")
|
|
|
+ private List<ItemsDTO> items;
|
|
|
+ @JsonProperty("page")
|
|
|
+ private Integer page;
|
|
|
+ @JsonProperty("page_count")
|
|
|
+ private Integer pageCount;
|
|
|
+ @JsonProperty("page_size")
|
|
|
+ private Integer pageSize;
|
|
|
+ @JsonProperty("total_count")
|
|
|
+ private Integer totalCount;
|
|
|
+
|
|
|
+ @NoArgsConstructor
|
|
|
+ @Data
|
|
|
+ public static class ItemsDTO {
|
|
|
+ @JsonProperty("arguments")
|
|
|
+ private ArgumentsDTO arguments;
|
|
|
+ @JsonProperty("auto_delete")
|
|
|
+ private Boolean autoDelete;
|
|
|
+ @JsonProperty("backing_queue_status")
|
|
|
+ private BackingQueueStatusDTO backingQueueStatus;
|
|
|
+ @JsonProperty("consumer_capacity")
|
|
|
+ private Integer consumerCapacity;
|
|
|
+ @JsonProperty("consumer_utilisation")
|
|
|
+ private Integer consumerUtilisation;
|
|
|
+ @JsonProperty("consumers")
|
|
|
+ private Integer consumers;
|
|
|
+ @JsonProperty("durable")
|
|
|
+ private Boolean durable;
|
|
|
+ @JsonProperty("effective_policy_definition")
|
|
|
+ private EffectivePolicyDefinitionDTO effectivePolicyDefinition;
|
|
|
+ @JsonProperty("exclusive")
|
|
|
+ private Boolean exclusive;
|
|
|
+ @JsonProperty("exclusive_consumer_tag")
|
|
|
+ private Object exclusiveConsumerTag;
|
|
|
+ @JsonProperty("garbage_collection")
|
|
|
+ private GarbageCollectionDTO garbageCollection;
|
|
|
+ @JsonProperty("head_message_timestamp")
|
|
|
+ private Object headMessageTimestamp;
|
|
|
+ @JsonProperty("memory")
|
|
|
+ private Integer memory;
|
|
|
+ @JsonProperty("message_bytes")
|
|
|
+ private Integer messageBytes;
|
|
|
+ @JsonProperty("message_bytes_paged_out")
|
|
|
+ private Integer messageBytesPagedOut;
|
|
|
+ @JsonProperty("message_bytes_persistent")
|
|
|
+ private Integer messageBytesPersistent;
|
|
|
+ @JsonProperty("message_bytes_ram")
|
|
|
+ private Integer messageBytesRam;
|
|
|
+ @JsonProperty("message_bytes_ready")
|
|
|
+ private Integer messageBytesReady;
|
|
|
+ @JsonProperty("message_bytes_unacknowledged")
|
|
|
+ private Integer messageBytesUnacknowledged;
|
|
|
+ @JsonProperty("message_stats")
|
|
|
+ private MessageStatsDTO messageStats;
|
|
|
+ @JsonProperty("messages")
|
|
|
+ private Integer messages;
|
|
|
+ @JsonProperty("messages_details")
|
|
|
+ private MessagesDetailsDTO messagesDetails;
|
|
|
+ @JsonProperty("messages_paged_out")
|
|
|
+ private Integer messagesPagedOut;
|
|
|
+ @JsonProperty("messages_persistent")
|
|
|
+ private Integer messagesPersistent;
|
|
|
+ @JsonProperty("messages_ram")
|
|
|
+ private Integer messagesRam;
|
|
|
+ @JsonProperty("messages_ready")
|
|
|
+ private Integer messagesReady;
|
|
|
+ @JsonProperty("messages_ready_details")
|
|
|
+ private MessagesReadyDetailsDTO messagesReadyDetails;
|
|
|
+ @JsonProperty("messages_ready_ram")
|
|
|
+ private Integer messagesReadyRam;
|
|
|
+ @JsonProperty("messages_unacknowledged")
|
|
|
+ private Integer messagesUnacknowledged;
|
|
|
+ @JsonProperty("messages_unacknowledged_details")
|
|
|
+ private MessagesUnacknowledgedDetailsDTO messagesUnacknowledgedDetails;
|
|
|
+ @JsonProperty("messages_unacknowledged_ram")
|
|
|
+ private Integer messagesUnacknowledgedRam;
|
|
|
+ @JsonProperty("name")
|
|
|
+ private String name;
|
|
|
+ @JsonProperty("node")
|
|
|
+ private String node;
|
|
|
+ @JsonProperty("operator_policy")
|
|
|
+ private Object operatorPolicy;
|
|
|
+ @JsonProperty("policy")
|
|
|
+ private Object policy;
|
|
|
+ @JsonProperty("recoverable_slaves")
|
|
|
+ private Object recoverableSlaves;
|
|
|
+ @JsonProperty("reductions")
|
|
|
+ private Long reductions;
|
|
|
+ @JsonProperty("reductions_details")
|
|
|
+ private ReductionsDetailsDTO reductionsDetails;
|
|
|
+ @JsonProperty("single_active_consumer_tag")
|
|
|
+ private Object singleActiveConsumerTag;
|
|
|
+ @JsonProperty("state")
|
|
|
+ private String state;
|
|
|
+ @JsonProperty("type")
|
|
|
+ private String type;
|
|
|
+ @JsonProperty("vhost")
|
|
|
+ private String vhost;
|
|
|
+ @JsonProperty("idle_since")
|
|
|
+ private String idleSince;
|
|
|
+
|
|
|
+ @NoArgsConstructor
|
|
|
+ @Data
|
|
|
+ public static class ArgumentsDTO {
|
|
|
+ @JsonProperty("x-queue-type")
|
|
|
+ private String xqueuetype;
|
|
|
+ }
|
|
|
+
|
|
|
+ @NoArgsConstructor
|
|
|
+ @Data
|
|
|
+ public static class BackingQueueStatusDTO {
|
|
|
+ }
|
|
|
+
|
|
|
+ @NoArgsConstructor
|
|
|
+ @Data
|
|
|
+ public static class EffectivePolicyDefinitionDTO {
|
|
|
+ }
|
|
|
+
|
|
|
+ @NoArgsConstructor
|
|
|
+ @Data
|
|
|
+ public static class GarbageCollectionDTO {
|
|
|
+ @JsonProperty("fullsweep_after")
|
|
|
+ private Integer fullsweepAfter;
|
|
|
+ @JsonProperty("max_heap_size")
|
|
|
+ private Integer maxHeapSize;
|
|
|
+ @JsonProperty("min_bin_vheap_size")
|
|
|
+ private Integer minBinVheapSize;
|
|
|
+ @JsonProperty("min_heap_size")
|
|
|
+ private Integer minHeapSize;
|
|
|
+ @JsonProperty("minor_gcs")
|
|
|
+ private Integer minorGcs;
|
|
|
+ }
|
|
|
+
|
|
|
+ @NoArgsConstructor
|
|
|
+ @Data
|
|
|
+ public static class MessageStatsDTO {
|
|
|
+ @JsonProperty("ack")
|
|
|
+ private Integer ack;
|
|
|
+ @JsonProperty("ack_details")
|
|
|
+ private AckDetailsDTO ackDetails;
|
|
|
+ @JsonProperty("deliver")
|
|
|
+ private Integer deliver;
|
|
|
+ @JsonProperty("deliver_details")
|
|
|
+ private DeliverDetailsDTO deliverDetails;
|
|
|
+ @JsonProperty("deliver_get")
|
|
|
+ private Integer deliverGet;
|
|
|
+ @JsonProperty("deliver_get_details")
|
|
|
+ private DeliverGetDetailsDTO deliverGetDetails;
|
|
|
+ @JsonProperty("deliver_no_ack")
|
|
|
+ private Integer deliverNoAck;
|
|
|
+ @JsonProperty("deliver_no_ack_details")
|
|
|
+ private DeliverNoAckDetailsDTO deliverNoAckDetails;
|
|
|
+ @JsonProperty("get")
|
|
|
+ private Integer get;
|
|
|
+ @JsonProperty("get_details")
|
|
|
+ private GetDetailsDTO getDetails;
|
|
|
+ @JsonProperty("get_empty")
|
|
|
+ private Integer getEmpty;
|
|
|
+ @JsonProperty("get_empty_details")
|
|
|
+ private GetEmptyDetailsDTO getEmptyDetails;
|
|
|
+ @JsonProperty("get_no_ack")
|
|
|
+ private Integer getNoAck;
|
|
|
+ @JsonProperty("get_no_ack_details")
|
|
|
+ private GetNoAckDetailsDTO getNoAckDetails;
|
|
|
+ @JsonProperty("publish")
|
|
|
+ private Integer publish;
|
|
|
+ @JsonProperty("publish_details")
|
|
|
+ private PublishDetailsDTO publishDetails;
|
|
|
+ @JsonProperty("redeliver")
|
|
|
+ private Integer redeliver;
|
|
|
+ @JsonProperty("redeliver_details")
|
|
|
+ private RedeliverDetailsDTO redeliverDetails;
|
|
|
+
|
|
|
+ @NoArgsConstructor
|
|
|
+ @Data
|
|
|
+ public static class AckDetailsDTO {
|
|
|
+ @JsonProperty("rate")
|
|
|
+ private Double rate;
|
|
|
+ }
|
|
|
+
|
|
|
+ @NoArgsConstructor
|
|
|
+ @Data
|
|
|
+ public static class DeliverDetailsDTO {
|
|
|
+ @JsonProperty("rate")
|
|
|
+ private Double rate;
|
|
|
+ }
|
|
|
+
|
|
|
+ @NoArgsConstructor
|
|
|
+ @Data
|
|
|
+ public static class DeliverGetDetailsDTO {
|
|
|
+ @JsonProperty("rate")
|
|
|
+ private Double rate;
|
|
|
+ }
|
|
|
+
|
|
|
+ @NoArgsConstructor
|
|
|
+ @Data
|
|
|
+ public static class DeliverNoAckDetailsDTO {
|
|
|
+ @JsonProperty("rate")
|
|
|
+ private Integer rate;
|
|
|
+ }
|
|
|
+
|
|
|
+ @NoArgsConstructor
|
|
|
+ @Data
|
|
|
+ public static class GetDetailsDTO {
|
|
|
+ @JsonProperty("rate")
|
|
|
+ private Integer rate;
|
|
|
+ }
|
|
|
+
|
|
|
+ @NoArgsConstructor
|
|
|
+ @Data
|
|
|
+ public static class GetEmptyDetailsDTO {
|
|
|
+ @JsonProperty("rate")
|
|
|
+ private Integer rate;
|
|
|
+ }
|
|
|
+
|
|
|
+ @NoArgsConstructor
|
|
|
+ @Data
|
|
|
+ public static class GetNoAckDetailsDTO {
|
|
|
+ @JsonProperty("rate")
|
|
|
+ private Integer rate;
|
|
|
+ }
|
|
|
+
|
|
|
+ @NoArgsConstructor
|
|
|
+ @Data
|
|
|
+ public static class PublishDetailsDTO {
|
|
|
+ @JsonProperty("rate")
|
|
|
+ private Integer rate;
|
|
|
+ }
|
|
|
+
|
|
|
+ @NoArgsConstructor
|
|
|
+ @Data
|
|
|
+ public static class RedeliverDetailsDTO {
|
|
|
+ @JsonProperty("rate")
|
|
|
+ private Integer rate;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @NoArgsConstructor
|
|
|
+ @Data
|
|
|
+ public static class MessagesDetailsDTO {
|
|
|
+ @JsonProperty("rate")
|
|
|
+ private Integer rate;
|
|
|
+ }
|
|
|
+
|
|
|
+ @NoArgsConstructor
|
|
|
+ @Data
|
|
|
+ public static class MessagesReadyDetailsDTO {
|
|
|
+ @JsonProperty("rate")
|
|
|
+ private Integer rate;
|
|
|
+ }
|
|
|
+
|
|
|
+ @NoArgsConstructor
|
|
|
+ @Data
|
|
|
+ public static class MessagesUnacknowledgedDetailsDTO {
|
|
|
+ @JsonProperty("rate")
|
|
|
+ private Integer rate;
|
|
|
+ }
|
|
|
+
|
|
|
+ @NoArgsConstructor
|
|
|
+ @Data
|
|
|
+ public static class ReductionsDetailsDTO {
|
|
|
+ @JsonProperty("rate")
|
|
|
+ private Integer rate;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|