1
0
mirror of https://github.com/Seldaek/monolog.git synced 2025-07-31 18:30:15 +02:00

Added SyslogUdpHandler.

This handler lets you log to a remote syslogd server via UPD. The
use-case here is having many webservers, and the need to gather log-
files on a centralized server.
This commit is contained in:
Jesper Skovgaard Nielsen
2013-10-31 09:41:00 +01:00
parent 0f3c054dff
commit e53d6040c0
4 changed files with 263 additions and 0 deletions

View File

@@ -0,0 +1,45 @@
<?php
namespace Monolog\Handler;
use Monolog\TestCase;
class UdpSocketTest extends TestCase
{
public function testWeDoNotSplitShortMessages()
{
$socket = $this->getMock('\Monolog\Handler\SyslogUdp\UdpSocket', ['send'], ['lol', 'lol']);
$socket->expects($this->at(0))
->method('send')
->with("HEADER: The quick brown fox jumps over the lazy dog");
$socket->write("The quick brown fox jumps over the lazy dog", "HEADER: ");
}
public function testWeSplitLongMessages()
{
$socket = $this->getMock('\Monolog\Handler\SyslogUdp\UdpSocket', ['send'], ['lol', 'lol']);
$socket->expects($this->at(1))
->method('send')
->with("The quick brown fox jumps over the lazy dog");
$aStringOfLength2048 = str_repeat("derp", 2048/4);
$socket->write($aStringOfLength2048."The quick brown fox jumps over the lazy dog");
}
public function testAllSplitMessagesHasAHeader()
{
$socket = $this->getMock('\Monolog\Handler\SyslogUdp\UdpSocket', ['send'], ['lol', 'lol']);
$socket->expects($this->exactly(5))
->method('send')
->with($this->stringStartsWith("HEADER"));
$aStringOfLength8192 = str_repeat("derp", 2048);
$socket->write($aStringOfLength8192, "HEADER");
}
}