コード例 #1
0
        protected override async Task Send(SyslogMessage syslogMessage)
        {
            if (!_udpClient.IsActive)
            {
                var logglyEndpointIp = Dns.GetHostEntry(LogglyConfig.Instance.Transport.EndpointHostname).AddressList[0];
                _udpClient.Connect(logglyEndpointIp, LogglyConfig.Instance.Transport.EndpointPort);
            }

            try
            {
                if (_udpClient.IsActive)
                {
                    var bytes = syslogMessage.GetBytes();
                    await _udpClient.SendAsync(bytes, bytes.Length).ConfigureAwait(false);
                }
                else
                {
                    LogglyException.Throw("Syslog client Socket is not connected.");
                }
            }
            finally
            {
                Close();
            }
        }
コード例 #2
0
 protected override async Task Send(SyslogMessage syslogMessage)
 {
     try
     {
         var hostEntry        = Dns.GetHostEntryAsync(LogglyConfig.Instance.Transport.EndpointHostname).Result;
         var logglyEndpointIp = hostEntry.AddressList[0];
         var bytes            = syslogMessage.GetBytes();
         await _udpClient.SendAsync(
             bytes,
             bytes.Length,
             new IPEndPoint(logglyEndpointIp, LogglyConfig.Instance.Transport.EndpointPort)).ConfigureAwait(false);
     }
     catch (Exception ex)
     {
         LogglyException.Throw(ex, "Error when sending data using Udp client.");
     }
     finally
     {
         Close();
     }
 }