|
Posted by petersprc on 03/25/07 19:53
On Mar 25, 10:34 am, jerryyang_...@yahoo.com wrote:
> Thanks
>
> But what about colourising the matching lines ?
Here's one (ugly) way to do it:
<?
error_reporting(E_ALL);
function printLog($text)
{
$lines = explode("\n", $text);
$buf = '';
$head = null;
$extra = array();
for ($i = 0; $i < count($lines); $i++) {
$parts = explode(' ', $lines[$i], 5);
if (count($parts) >= 4 && ($parts[0] == 'T' || $parts[1] == 'E'))
{
if (!is_null($head)) {
$buf .= printEntry($head, $extra);
}
$head = $parts;
$extra = array();
if ($i == count($lines) - 1) {
$buf .= printEntry($head, $extra);
}
} else {
$extra[] = $lines[$i];
}
}
echo $buf;
flush();
}
function printEntry($head, $extra)
{
static $rnd = null;
if (is_null($rnd)) {
$rnd = rand();
}
$hex = md5($head[3] . $rnd);
$fg = substr($hex, 0, 6);
$bg = sprintf("%02x%02x%02x",
((('0x' . substr($hex, 0, 2)) + 0x7f) % 0xff),
((('0x' . substr($hex, 2, 2)) + 0x7f) % 0xff),
((('0x' . substr($hex, 4, 2)) + 0x7f) % 0xff));
$msg = join(' ', $head) . "\n" . join("\n", $extra);
$str = "<span style=\"width: 100%; color: #{$fg}; background: #{$bg};
\">" .
htmlentities($msg, ENT_QUOTES) . "</span>";
$str = nl2br($str);
return $str;
}
$text = "T 20070325 123318 4605007c Connection from 111.111.111.111
T 20070325 123319 4605007c HELO testdomain.com
T 20070325 125817 46050083 EHLO S010600110962b82a.ed.roguedomain.net
T 20070325 125818 46050083 MAIL FROM: <gqvnwu...@roguedomain.net>
E 20070325 125823 46050083 Host 68.150.140.71 blocked by
10-12 .sorbs.net C - Block - message tagged.
T 20070325 125824 46050083 RCPT TO: <dign...@newsite.com>
E 20070325 125824 46050083 RCPT from 68.150.140.71 - user
<dign...@newsite.com> not known.
T 20070325 125824 46050083 Connection closed with 68.150.140.71, 7
sec. elapsed.
T 20070325 123349 4605007c Connection closed with 111.111.111.111, 31
sec. elapsed.
T 20070325 125947 46050084 Connection from 83.28.27.71
T 20070325 125947 46050084 HELO drmac.cl
T 20070325 125947 46050084 MAIL FROM: <bitransmitt...@drmac.cl>
E 20070325 125948 46050084 Host 83.28.27.71 blocked by
zen.spamhaus.org sbl/xbl/pbl/zen 2 - message tagged.
T 20070325 125948 46050084 RCPT TO: <a1aaa1azzzz1zaa...@newsite.com>
E 20070325 125948 46050084 RCPT from 83.28.27.71 - user
<a1aaa1azzzz1zaa...@newsite.com> not known.
T 20070325 125949 46050084 Connection closed with 83.28.27.71, 2 sec.
elapsed.
";
printLog($text);
?>
Navigation:
[Reply to this message]
|