2013-11-01 5 views
5

मैं "Google App Engine Launcher" द्वारा लॉन्च किए गए app_server का उपयोग करके अपने कंप्यूटर पर एक PHP अनुप्रयोग का परीक्षण कर रहा हूं।एप_सर्वर पर चल रहे 'syslog' आउटपुट को कैसे देखें PHP

लेकिन, इसके लॉग पर, मैं अपने PHP कोड पर डाले गए syslogs से आउटपुट नहीं देख रहा हूं।

मैंने बिना किसी सफलता के पैरामीटर --log_level और --dev_appserver_log_level को आजमाया है।

क्या कोई जानता है कि क्या किया जा सकता है?

मेरा Google ऐप इंजन लॉन्चर संस्करण 1.8.6 है।

+0

एक ही समस्या है। कोई समाधान नहीं मिला। मैं memcache में चीजों को लिखकर खुद की मदद करता हूं: '$ memcache = new memcache(); $ memcache-> सेट ('log_1', print_r ($ var, true)); ' – mattes

+0

आप सरल फ़ंक्शन file_put_contents() के साथ डिस्क पर लॉग सहेज सकते हैं –

उत्तर

1

डिफ़ॉल्ट कॉन्फ़िगरेशन में syslogging सक्षम होना चाहिए, इसलिए app_server लॉन्च करते समय कोई अतिरिक्त पैरामीटर आवश्यक नहीं होना चाहिए। क्या आप एक बहुत ही सरल टेस्ट स्क्रिप्ट निष्पादित कर सकते हैं और आउटपुट पोस्ट कर सकते हैं?

<?php 
print 'Using syslog() '. (syslog(LOG_DEBUG, 'Testing syslog() functionality') ? 'succeeded' : 'failed'); 

उपर्युक्त स्क्रिप्ट को निष्पादित करने और सकारात्मक परिणाम संदेश प्राप्त करने के बाद आपको अपने स्थानीय syslog में कम से कम एक प्रविष्टि मिलनी चाहिए।

आप प्रोग्राम लॉग पढ़ना चाहते हैं (स्रोत [1]):

आप AppEngine के LogService एपीआई का उपयोग कर syslog() से जोड़ा संदेशों से अधिक पुनरावृति कर सकते हैं:

use google\appengine\api\log\LogService; 
use google\appengine\util as util; 

$start = (float) $_GET["start"]; 
$end = (float) $_GET["end"]; 

$options = [ 
    'start_time' => $start * 1e6, 
    'end_time' => $end * 1e6, 
    'include_app_logs' => true 
]; 

$logs = LogService::fetch($options); 

[1] https://developers.google.com/appengine/docs/php/logs/

संबंधित मुद्दे