PHP for apache logging to mysql

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi folks

Ronan here.  Just joined the list.  I do PHP / MYSQL / GD / HTML / JavaScript / Flash stuff, building db driven sites, content management systems, etc.  I also use PHP as a scripting langauge on my servers - its generally great.

However I have a little problem which someone might have come across or be able to shed some light on.  I want to pipe logs directly from apache into mysql.  At the moment I can do this using a perl script that does this sort of thing:-

<script>

#!/usr/bin/perl

[ DB CONNECTIONS etc ]

while (<STDIN>) {
	[ DO DB INSERTS HERE ]
}

[ DB OBJ CLOSURE etc ]

</script>

I'm doing this in PHP:-

<script>

#!/usr/bin/php -q
<?php

$fp = fopen("/dev/stdin","r");
$inputfp = fopen("./input.txt","a");

function write_input($input, $inputfp) {
	
	[ DB INSERTS HERE ]	
	
}

$input = fread($fp,4096); // 4096 arbitrary value for testing
	
write_input($input,$inputfp);
	
fclose($inputfp);
fclose($fp);

?>

</script>

Works great if I manually pipe from ls or something 
(ie: ls ~/ | phplog.php) but nothing happens when piping from apache.  I reckon that the problem lies in the file pointer reading - perl seems to keep the pointer (ie: pipe) open while php seems to close the pipe after each fread().

Any clues ???

Cheers

-- 
Ronan
e: ronan@thelittledot.com
t: 01903 739 997
w: www.thelittledot.com

The Little Dot is a partnership of
Ronan Chilvers and Giles Webberley

-- 
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [PHP Users]     [Postgresql Discussion]     [Kernel Newbies]     [Postgresql]     [Yosemite News]

  Powered by Linux