2016-12-13 5 views
5

में मिलीसेकंड्स मैं Cascade 'ed Monolog का उपयोग करता हूं और YAML का उपयोग करके लॉगर्स कॉन्फ़िगर करता हूं। यह मेरा config का एक हिस्सा है: Monolog Formatter LineFormatter (PHP)

formatters: 
    dashed: 
     class: Monolog\Formatter\LineFormatter 
     format: "%datetime%-%channel%.%level_name% - %message%\n" 

यह एक स्वरूपित लॉग पंक्ति:

2016-12-13 17:49:16-app.INFO - <message> 

\Monolog\Formatter\LineFormatter लिए सही format मान मिलीसेकंड साथ टाइमस्टैम्प प्राप्त करने के लिए क्या है?

उत्तर

0

मेरे सिम्फनी 2.6 प्रोजेक्ट में मेरे पास एक कस्टम लॉग प्रोसेसर है इसलिए मैंने लॉग को सेवा के रूप में कार्यान्वित किया है, अगर यह यहां सेवा की कोड का टुकड़ा है .yml घोषणा; यदि आप logger_formatter को देखते हैं, तो क्लास कन्स्ट्रक्टर का दूसरा तर्क दिनांक प्रारूप है:

mybundle.logger: 
     class:  Symfony\Bridge\Monolog\Logger 
     arguments: [mybundle] # channel 
     calls: 
      - [pushHandler, [@mybundle.logger_handler]] 
      - [pushProcessor, [@mybundle.logger_processor]] 

mybundle.logger_processor: 
     class:  myBundle\Logging\LogProcessor 
     arguments: ["@session"] 

mybundle.logger_handler: 
     class:  myBundle\Logging\myBundleRotatingFileHandler #Monolog\Handler\RotatingFileHandler 
     arguments: ["@session", %kernel.logs_dir%/LOGGER_SID/%kernel.environment%.mybundle.log, 0, 400] #DEBUG = 100; INFO = 200; NOTICE = 250; WARNING = 300; ERROR = 400; CRITICAL = 500; ALERT = 550; EMERGENCY = 600; 
     calls: 
      - [setFormatter, [@mybundle.logger_formatter]] 
      - [setFilenameFormat, ['{filename}','Y-m-d']] 

mybundle.logger_formatter: 
     class: Monolog\Formatter\LineFormatter 
     arguments: 
      - "[%%datetime%%]\t%%extra.remote_addr%%\t%%level_name%%\t%%message%%\t%%extra.request_uri%%\n" 
      - "Y-m-d H:i:s.u"