1
Ich versuche, die activemq Statistik int C# für den Zugriff auf dieses Beispiel nehmen:Zugriff auf activemq Statistik-Plugin in C# .NET
http://activemq.apache.org/statisticsplugin.html
Y viele Möglichkeiten ausprobiert, aber meine empfangen MapMessage ist null oder throw Ausnahme wie " kann nicht AMQMessage zu MapMessage konvertieren“
dies ist meine Klasse:
public class Statistics
{
private readonly IConnectionFactory connectionFactory;
private readonly IConnection connection;
private readonly ISession session;
public Statistics(string brokerUri)
{
this.connectionFactory = new ConnectionFactory(brokerUri);
this.connection = connectionFactory.CreateConnection();
this.connection.Start();
this.session = connection.CreateSession();
}
public void GetStats()
{
// Crear consumidor
try
{
// Creo una cola y consumidor
IDestination queueReplyTo = session.CreateTemporaryQueue();
IMessageConsumer consumer = session.CreateConsumer(queueReplyTo);
// Crear cola y productor
ActiveMQQueue newQueue = new ActiveMQQueue("ActiveMQ.Statistics.Destination.TEST1");
IMessageProducer producer = session.CreateProducer(null);
// Crear cola monitorizada
string listeningQueue = "TEST1";
ActiveMQQueue query = new ActiveMQQueue(listeningQueue);
// Mandar mensaje vacío y replicar
IMessage msg = session.CreateMessage();
producer.Send(newQueue, msg);
msg.NMSReplyTo = queueReplyTo;
producer.Send(query, msg);
// Recibir
IMapMessage reply = (IMapMessage)consumer.ReceiveNoWait();
if (reply != null)
{
IPrimitiveMap statsMap = reply.Body;
foreach (string statKey in statsMap.Keys)
{
Console.WriteLine("{0} = {1}", statKey, statsMap[statKey]);
}
}
}
catch (Exception e)
{
var t = e.Message + " " + e.StackTrace;
}
}
}
Wo ist mein erroris mein Fehler? Vielen Dank im Voraus
Ich denke, dass Nachrichten an die „queueReplyTo“ werden automatisch gesendet, wenn eine Nachricht an den anderen erklärten Warteschlangen gesendet wird. Ich weiß nicht, wie 'Statistiken' funktioniert und ich nicht finden, Informationen, wie man es in .NET – Sem
Ich denke, Sie müssen sorgfältig lesen http://activemq.apache.org/statisticsplugin.html um das Konzept zu verstehen. Ich aktualisierte meine Antwort mit C# Code –
"CreateQueue" ist nicht in ISession API – Sem