latest updates
[namibia] / workers / Logger.php
1 <?php
2
3 #-> Root ourselves.
4 date_default_timezone_set('Africa/Johannesburg');
5
6
7 #-> Our primary workspace for getting stuff done.
8 class Logger
9 {
10
11
12         /**
13          * Log something to the error log.
14          * @param  GearmanJob $job
15          * @return null
16          */
17         static public function log(GearmanJob $job)
18         {
19                 #-> Unpack.
20                 $request = json_decode($job->workload(), true);
21                 error_log(
22                         is_object($request['message']) || is_array($request['message'])
23                                 ? print_r($request['message'], true)
24                                 : $request['message']
25                 );
26         }
27
28
29 }
30
31
32
33 #-> Register as a gearman worker.
34 $worker = new GearmanWorker();
35 $worker->addServer();
36 $worker->addFunction('Log', array('Logger', 'log'));
37
38 #-> Wait for jobs to come in.
39 while ($worker->work())
40 {
41         ;
42 }
43