コード例 #1
0
ファイル: Log.php プロジェクト: BGCX262/zym-svn-to-git
 /**
  * Setup db
  *
  */
 public function setup(Zend_Config $config)
 {
     // Get resource config
     $writerConfig = $config->writer;
     $filterConfig = $config->filter;
     // Log instance
     $log = new Zend_Log();
     // Enable database writer?
     if ($writerConfig->database->enabled) {
         $db = $this->getRegistry()->get($writerConfig->database->key, 'Zend_Db_Adapter_Abstract');
         // Make sure it's a right object
         if (!$db instanceof Zend_Db_Adapter_Abstract) {
             require_once 'Zym/App/Resource/Exception.php';
             throw new Zym_App_Resource_Exception('Resource ' . get_class($this) . ' requires the internal registry item "db" to contain a Zend_Db_Adapter_Abstract object');
         }
         $dbWriter = new Zend_Log_Writer_Db($db, $writerConfig->database->table);
         $log->addWriter($dbWriter);
     }
     // Enable stream writer?
     if ($writerConfig->stream->enabled) {
         $streamWriter = new Zend_Log_Writer_Stream($writerConfig->stream->stream, $writerConfig->stream->mode);
         $streamWriter->setFormatter(new Zend_Log_Formatter_Simple('%timestamp% %ipAddr% %priorityName% (%priority%): %message%' . PHP_EOL));
         $log->addWriter($streamWriter);
     }
     // Enable null writer
     $log->addWriter(new Zend_Log_Writer_Null());
     // Setup filters
     // Priority filter
     if ($filterConfig->priority->enabled) {
         $log->addFilter(new Zend_Log_Filter_Priority((int) $filterConfig->priority->level));
     }
     // Setup events
     // Log user ip address
     //$log->setEventItem('ipAddr', $_SERVER['REMOTE_ADDR']);
 }
コード例 #2
0
	function addWriteToScreen()
	{
		parent::addWriteToScreen();
		$writerScreen = new Zend_Log_Writer_Stream('php://stderr');
		$writerScreen->setFormatter( $this->screenFormatter );
		$this->addWriter($writerScreen);
	}
コード例 #3
0
ファイル: Locale.php プロジェクト: rogercastaneda/owlsys
 public function preDispatch($request)
 {
     try {
         $locale = new Zend_Locale();
         $locale->setDefault('en');
         $locale->setLocale(Zend_Locale::BROWSER);
         $requestedLanguage = key($locale->getBrowser());
         $formatter = new Zend_Log_Formatter_Simple('%message%' . PHP_EOL);
         $writer = new Zend_Log_Writer_Stream(APPLICATION_LOG_PATH . 'translations.log');
         $writer->setFormatter($formatter);
         $logger = new Zend_Log($writer);
         $frontendOptions = array('cache_id_prefix' => 'translation', 'lifetime' => 86400, 'automatic_serialization' => true);
         $backendOptions = array('cache_dir' => APPLICATION_CACHE_PATH);
         $cache = Zend_Cache::factory('Core', 'File', $frontendOptions, $backendOptions);
         $options = array('adapter' => 'gettext', 'scan' => Zend_Translate::LOCALE_FILENAME, 'content' => APPLICATION_PATH . '/languages/en/en.mo', 'locale' => 'auto', 'disableNotices' => true);
         $translate = new Zend_Translate($options);
         if (!$translate->isAvailable($locale->getLanguage())) {
             $locale->setLocale('en');
         } else {
             $translate->setLocale($locale);
         }
         $translate->setCache($cache);
         Zend_Registry::set('locale', $locale->getLanguage());
         Zend_Registry::set('Zend_Translate', $translate);
     } catch (Exception $e) {
         try {
             $writer = new Zend_Log_Writer_Stream(APPLICATION_LOG_PATH . 'plugin-locale.log');
             $logger = new Zend_Log($writer);
             $logger->log($e->getMessage(), Zend_Log::ERR);
         } catch (Exception $e) {
         }
     }
 }
コード例 #4
0
ファイル: Index.php プロジェクト: ares333/php-api-system
 private function log()
 {
     $dir = APP_PATH . '/logs/request';
     if (!is_dir($dir)) {
         mkdir($dir, 0755);
     }
     $file = $dir . '/' . date('Y-m-d') . '.log';
     $logger = new \Zend_Log();
     $formatter = new \Zend_Log_Formatter_Simple("%message%\n");
     $writer = new \Zend_Log_Writer_Stream($file);
     $writer->setFormatter($formatter);
     $logger->addWriter($writer);
     $data = array();
     $data[] = '[' . date('Y-m-d H:i:s') . '] ';
     $url = Http::getUrl('current');
     $url = substr($url, 0, strpos($url, '?')) . '?' . http_build_query($this->getRequest()->getRequest());
     $data[] = $url;
     $line = implode('', $data);
     $debug = Application::app()->getConfig()->debug;
     if ($debug) {
         $res = $this->getResponse()->getBody('api');
         $line .= "\n\t" . $res;
     }
     $logger->log($line, $logger::NOTICE);
 }
コード例 #5
0
ファイル: Logger.php プロジェクト: uning/backend_common
 public static function initDefault($logFilePath)
 {
     $writer = new Zend_Log_Writer_Stream($logFilePath);
     $format = '[%timestamp%] [%priorityName% %priority%] %message%' . PHP_EOL;
     $formatter = new Zend_Log_Formatter_Simple($format);
     $writer->setFormatter($formatter);
     Logger::registerLogger('default', $writer, null, true);
 }
コード例 #6
0
ファイル: Log.php プロジェクト: sarwarzahan/multi-logging
 /**
  * Add a stream writer
  * 
  * @param array $params
  * @param object $formatter
  * @return void 
  */
 public function addStreamWriter($params = array(), Zend_Log_Formatter_Interface $formatter = null)
 {
     $writer = new Zend_Log_Writer_Stream($params['file_path_url'], $params['mode']);
     if ($formatter) {
         $writer->setFormatter($formatter);
     }
     $this->addWriter($writer);
 }
コード例 #7
0
 /**
  * Initialise the logger with the given file.
  */
 private function initLogger($logfileName)
 {
     $logfile = @fopen($logfileName, 'a', false);
     $writer = new Zend_Log_Writer_Stream($logfile);
     $formatter = new Zend_Log_Formatter_Simple('%priorityName%: %message%' . PHP_EOL);
     $writer->setFormatter($formatter);
     $this->logger = new Zend_Log($writer);
 }
コード例 #8
0
 private static function getWriter(Zend_Config $config)
 {
     if ($config->name === null) {
         return null;
     }
     $writer = null;
     switch ($config->name) {
         case "Zend_Log_Writer_Stream":
             if ($config->stream === null) {
                 return null;
             }
             if ($config->mode === null) {
                 $mode = 'a';
             }
             $writer = new Zend_Log_Writer_Stream($config->stream, $mode);
             break;
     }
     if ($writer !== null && $config->formatters !== null) {
         foreach ($config->formatters as $formatterConfig) {
             $formatter = self::getFormatter($formatterConfig);
             if ($formatter !== null) {
                 $writer->setFormatter($formatter);
             }
         }
     }
     if ($writer !== null && $config->formatters !== null) {
         foreach ($config->formatters as $formatterConfig) {
             $formatter = self::getFormatter($formatterConfig);
             if ($formatter !== null) {
                 $writer->setFormatter($formatter);
             }
         }
     }
     if ($writer !== null && $config->filters !== null) {
         foreach ($config->filters as $filterConfig) {
             $formatter = self::getFilter($filterConfig);
             if ($formatter !== null) {
                 $writer->addFilter($formatter);
             }
         }
     }
     return $writer;
 }
コード例 #9
0
ファイル: Bootstrap.php プロジェクト: abtris/retreatin
 /**
  * set logger
  * @return void
  */
 protected function _initLog()
 {
     // Error log
     $writer = new Zend_Log_Writer_Stream($this->_config->logpath);
     $format = '%timestamp% %priorityName% (%priority%): ' . '[%module%] [%controller%] %message%' . PHP_EOL;
     $formatter = new Zend_Log_Formatter_Simple($format);
     $writer->setFormatter($formatter);
     $logger = new Zend_Log($writer);
     Zend_Registry::getInstance()->set('logger', $logger);
 }
コード例 #10
0
ファイル: Log.php プロジェクト: hukumonline/pmg
 /**
  * Writer untuk log message yang lainnya
  * Log message yang lainnya akan dituliskan ke dalam file system.log
  */
 protected function _allWriter()
 {
     $log = ROOT_DIR . '/data/log/system.log';
     $stream = fopen($log, 'a', false);
     if (!$stream) {
         throw new Exception('Failed to open _writer stream');
     }
     $writer = new Zend_Log_Writer_Stream($stream);
     $writer->setFormatter($this->_formatter);
     return $writer;
 }
コード例 #11
0
ファイル: Cdr.php プロジェクト: josmel/PortalWapMovistar
 private function saveCdrBanners($datos, $id, $name)
 {
     $writer = new Zend_Log_Writer_Stream(APPLICATION_PATH . '/../logs/cdr/' . $name . ".banners");
     // $writer = new Zend_Log_Writer_Stream('/var/log/portalwap/'.$name.".banners");
     $formatter = new Zend_Log_Formatter_Simple('%message%' . PHP_EOL);
     $writer->setFormatter($formatter);
     $log = new Zend_Log($writer);
     $banners = 'banner1.' . $datos['url'][0] . "," . 'banner2.' . $datos['url'][1] . "," . 'banner3.' . $datos['url'][2] . "," . 'banner4.' . $datos['url'][3] . "," . 'banner5.' . $datos['url'][4];
     $mensaje = $datos['fecha'] . "," . $datos['hora'] . "," . $_SERVER['REMOTE_ADDR'] . "," . $datos['telefono'] . ",perfil:" . $datos['perfil'] . "," . $banners;
     $log->info($mensaje);
 }
コード例 #12
0
ファイル: ErrorController.php プロジェクト: erickosma/e-ong
 protected function saveLog($errors)
 {
     $logger = new Zend_Log();
     $writer = new Zend_Log_Writer_Stream('application/tmp/erro/error.xml');
     $formatter = new Zend_Log_Formatter_Xml();
     $writer->setFormatter($formatter);
     $logger->addWriter($writer);
     $exception = $errors->exception;
     $exception->getTraceAsString();
     $logger->debug($exception->getMessage() . "\r\n");
 }
コード例 #13
0
 public function saveCdrLog($url, $message, $portal)
 {
     $datos = $this->obtenerPerfilNumero();
     $name = date('YmdH');
     $writer = new Zend_Log_Writer_Stream(APPLICATION_PATH . '/../data/cdr/' . $portal . '/' . $name . ".log");
     $formatter = new Zend_Log_Formatter_Simple('%message%' . PHP_EOL);
     $writer->setFormatter($formatter);
     $log = new Zend_Log($writer);
     $mensaje = $datos['fecha'] . "," . $datos['hora'] . "," . 'PERFIL:' . $datos['perfil'] . "," . $url . "," . $message . "," . $datos['telefono'];
     $log->info($mensaje);
 }
コード例 #14
0
 public function saveCdrDedicatorias($resultado)
 {
     $name = date('YmdH');
     $datos = $this->registerCdr();
     $writer = new Zend_Log_Writer_Stream(APPLICATION_PATH . '/../logs/cdr/' . $name . ".dedicatoria");
     $formatter = new Zend_Log_Formatter_Simple('%message%' . PHP_EOL);
     $writer->setFormatter($formatter);
     $log = new Zend_Log($writer);
     $mensaje = $datos['fecha'] . "," . $datos['hora'] . "," . $_SERVER['REMOTE_ADDR'] . "," . $datos['telefono'] . "," . 'perfil:' . $datos['perfil'] . "," . $resultado;
     $log->info($mensaje);
 }
コード例 #15
0
ファイル: Abstract.php プロジェクト: cwcw/cms
 /**
  * Initialize the logger. You may want to override the function
  *
  * @return void
  */
 protected function _setupLog()
 {
     $this->logger = new Streamwide_Log();
     $this->logger->setEventItem("class", get_class($this));
     $writer = new Zend_Log_Writer_Stream("php://output");
     $format = "SW | %class% | %timestamp% | %pid% | %memory% | %duration% | %priorityName%: %message%<br/>" . PHP_EOL;
     $formater = new Zend_Log_Formatter_Simple($format);
     $writer->setFormatter($formater);
     //$writer->addFilter(new Streamwide_Log_Filter_Priority(LOGGER_INFO));
     $this->logger->addWriter($writer);
 }
コード例 #16
0
ファイル: ZendTest.php プロジェクト: aimeos/ai-zend
 /**
  * Sets up the fixture, for example, opens a network connection.
  * This method is called before a test is executed.
  *
  * @access protected
  */
 protected function setUp()
 {
     if (class_exists('Zend_Log') === false) {
         $this->markTestSkipped('Class \\Zend_Log not found');
     }
     $writer = new \Zend_Log_Writer_Stream('error.log');
     $formatter = new \Zend_Log_Formatter_Simple('log: %message%' . PHP_EOL);
     $writer->setFormatter($formatter);
     $logger = new \Zend_Log($writer);
     $filter = new \Zend_Log_Filter_Priority(\Zend_Log::INFO);
     $logger->addFilter($filter);
     $this->object = new \Aimeos\MW\Logger\Zend($logger);
 }
コード例 #17
0
ファイル: Log.php プロジェクト: nstapelbroek/Glitch_Lib
 /**
  * Retrieves the logger object
  *
  * @return Zend_Log
  * @throws Glitch_Application_Resource_Exception
  */
 public function getLog()
 {
     if (null === $this->_log) {
         $options = $this->getOptions();
         // Force these options to be set - don't rely on the defaults!
         if (!isset($options['level'])) {
             throw new Glitch_Application_Resource_Exception('Undefined log option: "level"');
         }
         // Validate the log level
         $level = constant('Zend_Log::' . $options['level']);
         if (null === $level) {
             throw new Glitch_Application_Resource_Exception('Unknown log level: "' . $options['level'] . '"');
         }
         // Ensure the request is initialized
         $this->_bootstrap->bootstrap('Request');
         $request = $this->_bootstrap->getResource('Request');
         $isHttpRequest = $request instanceof Zend_Controller_Request_Http;
         // Use localhost as name if not running in HTTP mode
         $host = $isHttpRequest ? $request->getHttpHost() : 'localhost';
         if (strncasecmp($host, 'www.', 4) == 0) {
             $host = substr($host, 4);
             // Remove "www." prefix for readability
         }
         $this->_log = new Zend_Log();
         // Build filename, e.g. "20090601_localhost.log"
         $file = Zend_Date::now()->toString('yyyyMMdd') . '_' . $host . '.log';
         $file = GLITCH_LOGS_PATH . DIRECTORY_SEPARATOR . $file;
         $writer = new Zend_Log_Writer_Stream($file);
         // Use custom logging format, e.g.
         // [2010-08-07T17:03:18+02:00] ERR (/account/login): Method "_getParams" does not exist
         $format = '[%timestamp%] %priorityName%';
         if ($isHttpRequest) {
             $format .= ' (%requestUri%)';
             $this->_log->setEventItem('requestUri', $request->getRequestUri());
         }
         $format .= ': %message%';
         $formatter = new Zend_Log_Formatter_Simple($format . PHP_EOL);
         $writer->setFormatter($formatter);
         $this->_log->addWriter($writer);
         // Also send log output to browser console?
         if ($isHttpRequest && (isset($options['toFirebug']) && $options['toFirebug'])) {
             $this->_log->addWriter(new Zend_Log_Writer_Firebug());
         }
         $filter = new Zend_Log_Filter_Priority($level);
         $this->_log->addFilter($filter);
         // Allow application-wide access
         Glitch_Registry::setLog($this->_log);
     }
     return $this->_log;
 }
コード例 #18
0
 protected function _initSystemLog()
 {
     $sysLogFile = Agana_Util_Log::getSystemLogPath($this);
     $fp = @fopen($sysLogFile, 'a+', false);
     if ($fp) {
         $sysLog = new Zend_Log_Writer_Stream($fp);
         $formatter = new Zend_Log_Formatter_Xml();
         $sysLog->setFormatter($formatter);
     } else {
         // TODO improve this
         die('App error log file or directory is not writable');
     }
     $systemLogger = new Zend_Log($sysLog);
     Zend_Registry::set(self::APP_ERROR_LOGGER, $systemLogger);
 }
コード例 #19
0
 private function _zendlog()
 {
     $write = new Zend_Log_Writer_Stream(APPLICATION_PATH . '/log/log.txt');
     $format = new Zend_Log_Formatter_Simple('%message%');
     $write->setFormatter($format);
     $log = new Zend_Log($write);
     $log->info('thong bao', Zend_Log::INFO);
     $log->err('thong bao loi', Zend_Log::ERR);
     //        $write= new Zend_Log_Writer_Stream(APPLICATION_PATH.'/log/log.txt');
     //
     //        $log->info('thong bao', Zend_Log::INFO);
     //        $log->err('thong bao loi', Zend_Log::ERR);
     //
     //
     //
     //         $log = new Zend_Log($write);
 }
コード例 #20
0
ファイル: Logger.php プロジェクト: mtday/timesheet-system
 /**
  * Retrieve the singleton logger instance, creating it if necessary.
  *
  * @return Returns the logger.
  */
 public static function getLogger()
 {
     // Make sure the logger has been created.
     if (self::$logger === null) {
         // Define the logging format.
         $format = '%timestamp% %priorityName% %message%' . PHP_EOL;
         // Create the formatter.
         $formatter = new Zend_Log_Formatter_Simple($format);
         // Create the new writer for the log file.
         $writer = new Zend_Log_Writer_Stream(Bootstrap::$root . '/logs/app.log');
         // Set the writer format.
         $writer->setFormatter($formatter);
         // Create the logger.
         self::$logger = new Zend_Log($writer);
     }
     // Return the logger.
     return self::$logger;
 }
コード例 #21
0
 /**
  * Initializes the logger
  */
 protected function _initLog()
 {
     $logger = new Zend_Log();
        
     if (Zend_Registry::get('option-logOn')) {
         $writer = new Zend_Log_Writer_Stream(realpath(Zend_Registry::get('option-logDir') . '/' . Zend_Registry::get('option-logFile')));
         
         $format = '%timestamp%, %ip%, %cachehit%, %message%' . PHP_EOL;
         $formatter = new Zend_Log_Formatter_Simple($format);
       
         $writer->setFormatter($formatter);
     } else {
         $writer = new Zend_Log_Writer_Null;
     }
     
     $logger->addWriter($writer);
     
     Zend_Registry::set('logger', $logger);
 }
コード例 #22
0
 private function createWriter($logfilePath = null)
 {
     $GLOBALS['id_string'] = uniqid();
     // Write ID string to global variables, so we can identify/match individual runs.
     $format = '%timestamp% %priorityName% (%priority%, ID ' . $GLOBALS['id_string'] . '): %message%' . PHP_EOL;
     $formatter = new Zend_Log_Formatter_Simple($format);
     if (is_null($logfilePath)) {
         $writer = new Zend_Log_Writer_Stream('php://output');
     } else {
         $logfile = @fopen($logfilePath, 'a', false);
         if ($logfile === false) {
             // TODO use Opus exception
             throw new Exception('Failed to open logging file:' . $logfilePath);
         }
         $writer = new Zend_Log_Writer_Stream($logfile);
     }
     $writer->setFormatter($formatter);
     return $writer;
 }
コード例 #23
0
ファイル: Lang.php プロジェクト: rogercastaneda/owlsys
 /**
  * Load language file for ACL Module
  *
  * @see Zend_Controller_Plugin_Abstract::routeShutdown()
  */
 public function routeShutdown(Zend_Controller_Request_Abstract $request)
 {
     /* @var $translate Zend_Translate */
     $translate = Zend_Registry::get("Zend_Translate");
     $locale = Zend_Registry::get('locale');
     $formatter = new Zend_Log_Formatter_Simple('%message%' . PHP_EOL);
     $writer = new Zend_Log_Writer_Stream(APPLICATION_PATH . '/data/log/translations.log');
     $writer->setFormatter($formatter);
     $logger = new Zend_Log($writer);
     $options = array('clear' => false, 'scan' => Zend_Translate::LOCALE_DIRECTORY, 'disableNotices' => true, 'log' => $logger, 'logMessage' => '%locale%;%message%', 'logUntranslated' => true);
     $translateModule = new Zend_Translate('csv', APPLICATION_PATH . "/modules/acl/languages/", 'auto', $options);
     $translate->getAdapter()->addTranslation($translateModule);
     /*$translate->getAdapter()->addTranslation(
               APPLICATION_PATH . "/modules/acl/languages/en.csv", "en", 
               $options);
       ;
       $translate->getAdapter()->addTranslation(
               APPLICATION_PATH . "/modules/acl/languages/es.csv", "es", 
               $options);*/
     $translate->setLocale($locale);
 }
コード例 #24
0
ファイル: Bootstrap.php プロジェクト: smalyshev/chgk-teams
 /**
  * Setup the logging
  */
 protected function _initLogging()
 {
     $this->bootstrap('frontController');
     $this->bootstrap('config');
     $logger = new Zend_Log();
     //        $writer = 'production' == $this->getEnvironment() ?
     //			new Zend_Log_Writer_Stream(APPLICATION_PATH . '/../data/logs/app.log') :
     //			new Zend_Log_Writer_Firebug();
     //        $logger->addWriter($writer);
     $config = $this->getResource('config');
     $writer = new Zend_Log_Writer_Stream($config["log"]["file"]);
     $writer->setFormatter(new Reg2_Log_Formatter($config["log"]["format"]));
     $logger->addWriter($writer);
     if ('production' == $this->getEnvironment()) {
         $filter = new Zend_Log_Filter_Priority(Zend_Log::INFO);
         $logger->addFilter($filter);
     }
     $this->_logger = $logger;
     Zend_Registry::set('log', $logger);
     $logger->debug("Start logging");
     return $logger;
 }
コード例 #25
0
ファイル: Agi.php プロジェクト: rootzig/SNEP
 private function startLogger()
 {
     $log = Zend_Registry::get('log');
     $asterisk = Zend_Registry::get('asterisk');
     $request = $asterisk->request;
     // Log em arquivo
     $writer = new Zend_Log_Writer_Stream($this->config->system->path->log . '/agi.log');
     $format = "%timestamp% - {$request['agi_callerid']}- -> {$request['agi_extension']} %priorityName% (%priority%):%message%";
     $formatter = new Zend_Log_Formatter_Simple($format . PHP_EOL);
     $writer->setFormatter($formatter);
     $log->addWriter($writer);
     // Log no console do Asterisk
     $console_writer = new PBX_Asterisk_Log_Writer($asterisk);
     $format = "{$asterisk->request['agi_callerid']} -> {$asterisk->request['agi_extension']} %priorityName% (%priority%):%message%";
     $console_formatter = new Zend_Log_Formatter_Simple($format . PHP_EOL);
     $console_writer->setFormatter($console_formatter);
     $log->addWriter($console_writer);
     if (!$this->config->system->debug) {
         $writer->addFilter(new Zend_Log_Filter_Priority(Zend_Log::NOTICE));
         $console_writer->addFilter(new Zend_Log_Filter_Priority(Zend_Log::INFO));
     }
 }
 /**
  * test pw replacements
  */
 public function testPWReplacements()
 {
     $config = Tinebase_Core::getConfig();
     $logfile = tempnam(Tinebase_Core::getTempDir(), 'testlog');
     $writer = new Zend_Log_Writer_Stream($logfile);
     $formatter = new Tinebase_Log_Formatter();
     $formatter->addReplacement($config->database->password);
     $writer->setFormatter($formatter);
     $this->_logger->addWriter($writer);
     $filter = new Zend_Log_Filter_Priority(5);
     $this->_logger->addFilter($filter);
     $this->_logger->notice($config->database->password);
     $loggerFile = file_get_contents($logfile);
     $writer->shutdown();
     unlink($logfile);
     $this->assertFalse(strpos($loggerFile, $config->database->password), 'pw found!');
     $this->assertContains('********', $loggerFile);
     if ($config->logger->logruntime || $config->logger->logdifftime) {
         $this->assertTrue(preg_match('/' . Tinebase_Core::getUser()->accountLoginName . ' \\d/', $loggerFile) === 1);
     } else {
         $this->assertContains(Tinebase_Core::getUser()->accountLoginName . ' - ', $loggerFile);
     }
 }
コード例 #27
0
ファイル: Log.php プロジェクト: vrtulka23/daiquiri
 /**
  * Constructor. Sets writer and filter for log.
  */
 function __construct()
 {
     if (Daiquiri_Config::getInstance()->core->log->enabled && php_sapi_name() !== 'cli') {
         // configure formatter for log
         $ip = Daiquiri_Auth::getInstance()->getRemoteAddr();
         $username = Daiquiri_Auth::getInstance()->getCurrentUSername();
         $formatstring = '%timestamp% ' . $ip . ' "' . $username . '" %priorityName% "%message%"' . PHP_EOL;
         $formatter = new Zend_Log_Formatter_Simple($formatstring);
         // open log file and get writer for log
         $stream = @fopen(Daiquiri_Config::getInstance()->core->log->logfile, 'a', false);
         if (!$stream) {
             throw new Exception('Failed to open log file');
         }
         $writer = new Zend_Log_Writer_Stream($stream);
         $writer->setFormatter($formatter);
         // set loglevel
         $loglevel = strtoupper(Daiquiri_Config::getInstance()->core->log->loglevel);
         $filter = new Zend_Log_Filter_Priority(constant("Zend_Log::{$loglevel}"));
         // configure log object
         $this->_log = new Zend_Log();
         $this->_log->addWriter($writer);
         $this->_log->addFilter($filter);
     }
 }
コード例 #28
0
ファイル: Log.php プロジェクト: NEOatNHNG/cacert-testmgr
 /**
  * make new logger, configuration is taken from system_config, section $instanceName
  * @param string $instanceName
  * @param string $application
  */
 protected function __construct($instanceName, $application = null)
 {
     if ($instanceName === null) {
         throw new Exception(__METHOD__ . ': expected an instance name, got none');
     }
     $config = Config::getInstance(SYSTEM_CONFIG);
     $log_config = $config->{$instanceName};
     $this->log = new Zend_Log();
     if (isset($log_config->file) && intval($log_config->file->enabled) !== 0) {
         $file_logger = new Zend_Log_Writer_Stream($log_config->file->name);
         /**
         *
             		$format = Zend_Log_Formatter_Simple::DEFAULT_FORMAT;
             		$formatter = new Zend_Log_Formatter_Simple($format);
             		$file_logger->setFormatter($formatter);
         */
         if (isset($application) && $application != '') {
             $this->log->setEventItem('application', $application);
         }
         $formatter = new Zend_Log_Formatter_Simple('%syslog_time% %application%[%pid%]: %priorityName%: %message%' . PHP_EOL);
         $file_logger->setFormatter($formatter);
         $this->log->addWriter($file_logger);
     }
     if (isset($log_config->syslog) && intval($log_config->syslog->enabled) !== 0) {
         $param = array('facility' => $log_config->syslog->facility);
         if (isset($application) && $application != '') {
             $param['application'] = $application;
         }
         $sys_logger = new Zend_Log_Writer_Syslog($param);
         $formatter = new Zend_Log_Formatter_Simple('%priorityName%: %message%' . PHP_EOL);
         $sys_logger->setFormatter($formatter);
         $this->log->addWriter($sys_logger);
     }
     $filter = new Zend_Log_Filter_Priority(intval($log_config->priority));
     $this->log->addFilter($filter);
 }
コード例 #29
0
ファイル: generate.php プロジェクト: ViniciusAugusto/magento2
 $args = $shell->getOptions();
 if (empty($args)) {
     echo $shell->getUsageMessage();
     exit(0);
 }
 $config = \Magento\ToolkitFramework\Config::getInstance();
 $config->loadConfig(\Magento\ToolkitFramework\Helper\Cli::getOption('profile'));
 $config->loadLabels(__DIR__ . '/framework/labels.xml');
 $labels = $config->getLabels();
 echo 'Generating profile with following params:' . PHP_EOL;
 foreach ($labels as $configKey => $label) {
     echo ' |- ' . $label . ': ' . $config->getValue($configKey) . PHP_EOL;
 }
 $files = \Magento\ToolkitFramework\FixtureSet::getInstance()->getFixtures();
 $logWriter = new \Zend_Log_Writer_Stream('php://output');
 $logWriter->setFormatter(new \Zend_Log_Formatter_Simple('%message%' . PHP_EOL));
 $logger = new \Zend_Log($logWriter);
 $shell = new \Magento\Framework\Shell(new \Magento\Framework\Shell\CommandRenderer(), $logger);
 $application = new \Magento\ToolkitFramework\Application($applicationBaseDir, $shell);
 $application->bootstrap();
 foreach ($files as $fixture) {
     echo $fixture['action'] . '... ';
     $startTime = microtime(true);
     $application->applyFixture(__DIR__ . '/fixtures/' . $fixture['file']);
     $endTime = microtime(true);
     $resultTime = $endTime - $startTime;
     echo ' done in ' . gmdate('H:i:s', $resultTime) . PHP_EOL;
 }
 $application->reindex();
 $totalEndTime = microtime(true);
 $totalResultTime = $totalEndTime - $totalStartTime;
コード例 #30
0
/**
 * Do general setup for a CLI script
 * @param array $pa_additional_parameters Additional command line parameters. You don't have to add
 * --log/-l for the log file and --log-level/-d for the Zend_Log log level. They're always set up automatically
 * @return Zend_Console_Getopt
 */
function caSetupCLIScript($pa_additional_parameters)
{
    require_once __CA_LIB_DIR__ . "/core/Zend/Console/Getopt.php";
    require_once __CA_LIB_DIR__ . "/core/Zend/Log.php";
    require_once __CA_LIB_DIR__ . "/core/Zend/Log/Writer/Stream.php";
    require_once __CA_LIB_DIR__ . "/core/Zend/Log/Writer/Syslog.php";
    require_once __CA_LIB_DIR__ . "/core/Zend/Log/Formatter/Simple.php";
    $va_available_cli_opts = array_merge(array("log|l-s" => "Path to log file. If omitted, we log into the system log. Note that we don't log DEBUG messages into the system log, even when the log level is set to DEBUG.", "log-level|d-s" => "Log level"), $pa_additional_parameters);
    try {
        $o_opts = new Zend_Console_Getopt($va_available_cli_opts);
        $o_opts->parse();
    } catch (Exception $e) {
        die("Invalid command line options: " . $e->getMessage() . PHP_EOL);
    }
    // set up logging
    $o_writer = null;
    if ($vs_log = $o_opts->getOption('log')) {
        // log to file
        try {
            $o_writer = new Zend_Log_Writer_Stream($vs_log);
            $o_writer->setFormatter(new Zend_Log_Formatter_Simple('%timestamp% %priorityName%: %message%' . PHP_EOL));
        } catch (Zend_Log_Exception $e) {
            // error while opening the file (usually permissions)
            $o_writer = null;
            print CLIUtils::textWithColor("Couldn't open log file. Now logging via system log.", "bold_red") . PHP_EOL . PHP_EOL;
        }
    }
    // default: log everything to syslog
    if (!$o_writer) {
        $o_writer = new Zend_Log_Writer_Syslog(array('application' => 'CollectiveAccess CLI', 'facility' => LOG_USER));
        // no need for timespamps in syslog ... the syslog itsself provides that
        $o_writer->setFormatter(new Zend_Log_Formatter_Simple('%priorityName%: %message%' . PHP_EOL));
    }
    // was a loglevel set via command line? -> add filter to Zend logger, otherwise use WARN
    $vs_level = $o_opts->getOption('log-level');
    switch ($vs_level) {
        case 'ERR':
            $o_filter = new Zend_Log_Filter_Priority(Zend_Log::ERR);
            break;
        case 'DEBUG':
            $o_filter = new Zend_Log_Filter_Priority(Zend_Log::DEBUG);
            break;
        case 'INFO':
            $o_filter = new Zend_Log_Filter_Priority(Zend_Log::INFO);
            break;
        case 'WARN':
        default:
            $o_filter = new Zend_Log_Filter_Priority(Zend_Log::WARN);
            break;
    }
    // set up global logger. can be used by importing 'global $g_logger' anywhere, but it's recommended to use the caCLILog() helper instead
    global $g_logger;
    $g_logger = new Zend_Log($o_writer);
    $g_logger->setTimestampFormat('D Y-m-d H:i:s');
    $g_logger->addFilter($o_filter);
    return $o_opts;
}