27 lines
965 B
C#
27 lines
965 B
C#
using System;
|
|
using System.Linq;
|
|
using RabbitMQ.Client;
|
|
using System.Text;
|
|
|
|
class EmitLogDirect
|
|
{
|
|
public static void Main( string[] args )
|
|
{
|
|
var factory = new ConnectionFactory() { HostName = "localhost" };
|
|
using( var connection = factory.CreateConnection() )
|
|
using( var channel = connection.CreateModel() )
|
|
{
|
|
channel.ExchangeDeclare( exchange: "direct_logs", type: "direct" );
|
|
|
|
var severity = ( args.Length > 0 ) ? args[0] : "info";
|
|
var message = ( args.Length > 1 ) ? string.Join( " ", args.Skip( 1 ).ToArray() ) : "Hello World!";
|
|
var body = Encoding.UTF8.GetBytes( message );
|
|
channel.BasicPublish( exchange: "direct_logs", routingKey: severity, basicProperties: null, body: body );
|
|
Console.WriteLine( " [x] Sent '{0}':'{1}'", severity, message );
|
|
}
|
|
|
|
Console.WriteLine( " Press [enter] to exit." );
|
|
Console.ReadLine();
|
|
}
|
|
}
|