protected function execute($arguments = array(), $options = array()) { $context = sfContext::createInstance(sfProjectConfiguration::getApplicationConfiguration('app', 'dev', true)); parent::execute($arguments, $options); // initialize the database connection $databaseManager = new sfDatabaseManager($this->configuration); $con = $databaseManager->getDatabase($options['connection'])->getConnection(); // add your code here $this->log('[INFO] Flushing old data...' . "\n"); $eventlog_flush = EtvaSettingPeer::retrieveByPK('eventlog_flush'); $flush_range = $eventlog_flush->getValue(); $con->beginTransaction(); $affected = 0; try { $offset_date = date("c", time() - $flush_range * 24 * 60 * 60); /* * get event records that have creation date outdated */ $c = new Criteria(); $c->add(EtvaEventPeer::CREATED_AT, $offset_date, Criteria::LESS_THAN); $affected = EtvaEventPeer::doDelete($c, $con); $con->commit(); $message = sprintf('Events Log - %d Record(s) deleted after %d day offset', $affected, $flush_range); $context->getEventDispatcher()->notify(new sfEvent(sfConfig::get('config_acronym'), 'event.log', array('message' => $message))); $this->log('[INFO] ' . $message); } catch (PropelException $e) { $con->rollBack(); throw $e; } $logger = new sfFileLogger($context->getEventDispatcher(), array('file' => sfConfig::get("sf_log_dir") . '/cron_status.log')); // log the message! $logger->log("[INFO] The events flush task ran!", 6); }
public function execute($filterChain) { // Execute this filter only once if ($this->isFirstCall()) { if ($this->getParameter("enable") == TRUE) { if ($this->getParameter("health_check") == TRUE) { $this->healthCheck(); } if ($this->getParameter("security") == TRUE) { $this->secureRequest(); } } $request = $this->getContext()->getRequest(); $partner_id = $request->getParameter("partner_id"); if (!$partner_id) { $partner_id = $request->getParameter("p"); } if ($partner_id == -1) { // add an extra logfile for specific partners - the directory will be the same as the kaltura_prod // the name will be p_<partner_id>.log $log_path = sfConfig::get("sf_log_dir"); $logger = sfLogger::getInstance(); $log = new sfFileLogger(); $log->initialize(array('file' => $log_path . "/p_{$partner_id}.log")); $logger->registerLogger($log); } } // Execute next filter $filterChain->execute(); // use this point to flush all the modified objects in mystatisticsMgr myStatisticsMgr::saveAllModified(); }
protected function execute($arguments = array(), $options = array()) { $context = sfContext::createInstance(sfProjectConfiguration::getApplicationConfiguration('app', $options['env'], true)); parent::execute($arguments, $options); // initialize the database connection $databaseManager = new sfDatabaseManager($this->configuration); $con = $databaseManager->getDatabase($options['connection'])->getConnection(); // add your code here $this->log('[INFO]Checking node(s) virtual machines state...' . "\n"); // get nodes active $updated_vm_state = array(); $nodes = EtvaNodeQuery::create()->filterByState(EtvaNode::NODE_ACTIVE)->find(); $affected = 0; foreach ($nodes as $node) { $response = $node->soapSend('domains_stats'); $success = $response['success']; if ($success) { $returned_data = $response['response']; foreach ($returned_data as $i => $server) { $server_data = (array) $server; $etva_server = $node->retrieveServerByName($server_data['name']); if ($etva_server) { $server_id = $etva_server->getId(); // get server id if ($etva_server->getVmState() !== EtvaServer::STATE_MIGRATING) { // only if not in migrating mode $etva_server->setVmState($server_data['state']); $etva_server->save(); } $updated_vm_state[$server_id] = $etva_server->getVmState(); // mark as updated } } } else { $affected++; $errors[] = $response['error']; } } // change state as STOP for servers that are not in array EtvaServerQuery::create()->filterById(array_keys($updated_vm_state), Criteria::NOT_IN)->update(array('VmState' => EtvaServer::STATE_STOP)); if ($nodes) { $message = sprintf('%d Node(s) could not be checked for virtual machines state', $affected); if ($affected > 0) { $context->getEventDispatcher()->notify(new sfEvent(sfConfig::get('config_acronym'), 'event.log', array('message' => $message, 'priority' => EtvaEventLogger::ERR))); } } if (!empty($errors)) { $this->log('[INFO]' . $message); } $logger = new sfFileLogger($context->getEventDispatcher(), array('file' => sfConfig::get("sf_log_dir") . '/cron_status.log')); // log the message! $logger->log("The check virtual machines state task ran!", 6); }
/** * Initializes the file logger. * * @param array Options for the logger */ public function initialize($options = array()) { if (!isset($options['file'])) { throw new sfConfigurationException('File option is mandatory for a file logger'); } $dir = dirname($options['file']); if (!is_dir($dir)) { mkdir($dir, 0777, 1); } if (!is_writable($dir) || file_exists($options['file']) && !is_writable($options['file'])) { throw new sfFileException(sprintf('Unable to open the log file "%s" for writing', $options['file'])); } $this->fp = fopen($options['file'], 'a'); if (!self::$id) { self::$id = (string) (microtime(true) * 100); } }
$file = sfToolkit::getTmpDir() . DIRECTORY_SEPARATOR . 'sf_log_file.txt'; if (file_exists($file)) { unlink($file); } $dispatcher = new sfEventDispatcher(); // ->initialize() $t->diag('->initialize()'); try { $logger = new sfFileLogger($dispatcher); $t->fail('->initialize() parameters must contains a "file" parameter'); } catch (sfConfigurationException $e) { $t->pass('->initialize() parameters must contains a "file" parameter'); } // ->log() $t->diag('->log()'); $logger = new sfFileLogger($dispatcher, array('file' => $file)); $logger->log('foo'); $lines = explode("\n", file_get_contents($file)); $t->like($lines[0], '/foo/', '->log() logs a message to the file'); $logger->log('bar'); $lines = explode("\n", file_get_contents($file)); $t->like($lines[1], '/bar/', '->log() logs a message to the file'); class TestLogger extends sfFileLogger { public function getTimeFormat() { return $this->timeFormat; } protected function getPriority($priority) { return '*' . $priority . '*';
protected function execute($arguments = array(), $options = array()) { $context = sfContext::createInstance(sfProjectConfiguration::getApplicationConfiguration('app', 'dev', true)); parent::execute($arguments, $options); // initialize the database connection $databaseManager = new sfDatabaseManager($this->configuration); $con = $databaseManager->getDatabase($options['connection'])->getConnection(); // add your code here $this->log('[INFO] Checking VirtAgents state...' . "\n"); $offset = sfConfig::get('app_node_keepalive_update') + sfConfig::get('app_node_keepalive_update_offset'); $total_nodes = EtvaNodePeer::doCount(new Criteria()); if ($total_nodes > 0) { $con->beginTransaction(); $affected = 0; try { $offset_date = date("c", time() - $offset); /* * get nodes that have last_keepalive field outdated */ $c1 = new Criteria(); $c1->add(EtvaNodePeer::LAST_KEEPALIVE, $offset_date, Criteria::LESS_THAN); $c1->add(EtvaNodePeer::STATE, EtvaNode::NODE_ACTIVE); // only active //update statement $c2 = new Criteria(); $c2->add(EtvaNodePeer::STATE, EtvaNode::NODE_INACTIVE); $affected += BasePeer::doUpdate($c1, $c2, $con); // update maintenance and running to maintenance $c1 = new Criteria(); $c1->add(EtvaNodePeer::LAST_KEEPALIVE, $offset_date, Criteria::LESS_THAN); $c1->add(EtvaNodePeer::STATE, EtvaNode::NODE_MAINTENANCE_UP); //update statement $c2 = new Criteria(); $c2->add(EtvaNodePeer::STATE, EtvaNode::NODE_MAINTENANCE); $affected += BasePeer::doUpdate($c1, $c2, $con); // update fail and running to fail $c1 = new Criteria(); $c1->add(EtvaNodePeer::LAST_KEEPALIVE, $offset_date, Criteria::LESS_THAN); $c1->add(EtvaNodePeer::STATE, EtvaNode::NODE_FAIL_UP); // only active //update statement $c2 = new Criteria(); $c2->add(EtvaNodePeer::STATE, EtvaNode::NODE_FAIL); $affected += BasePeer::doUpdate($c1, $c2, $con); $con->commit(); $message = sprintf('%d Node(s) NOT received update in time offset of %d seconds', $affected, $offset); if ($affected > 0) { $context->getEventDispatcher()->notify(new sfEvent(sfConfig::get('config_acronym'), 'event.log', array('message' => $message, 'priority' => EtvaEventLogger::ERR))); } $this->log('[INFO]' . $message); } catch (PropelException $e) { $con->rollBack(); throw $e; } } $logger = new sfFileLogger($context->getEventDispatcher(), array('file' => sfConfig::get("sf_log_dir") . '/cron_status.log')); // log the message! $logger->log("[INFO] The check virtAgents task ran!", 6); }
date_default_timezone_set(@date_default_timezone_get()); } } } $sf_app_config_dir_name = sfConfig::get('sf_app_config_dir_name'); $sf_debug = sfConfig::get('sf_debug'); if ($sf_debug) { require_once $sf_symfony_lib_dir . '/debug/sfTimerManager.class.php'; require_once $sf_symfony_lib_dir . '/debug/sfTimer.class.php'; } sfConfig::add(array('sf_default_module' => 'default', 'sf_default_action' => 'index', 'sf_error_404_module' => 'default', 'sf_error_404_action' => 'error404', 'sf_login_module' => 'default', 'sf_login_action' => 'index', 'sf_secure_module' => 'default', 'sf_secure_action' => 'index', 'sf_module_disabled_module' => 'default', 'sf_module_disabled_action' => 'disabled', 'sf_unavailable_module' => 'default', 'sf_unavailable_action' => 'unavailable', 'sf_available' => true, 'sf_use_database' => true, 'sf_use_security' => true, 'sf_use_flash' => false, 'sf_i18n' => true, 'sf_check_symfony_version' => false, 'sf_use_process_cache' => true, 'sf_compressed' => true, 'sf_check_lock' => false, 'sf_escaping_strategy' => 'bc', 'sf_escaping_method' => 'ESC_ENTITIES', 'sf_suffix' => '.', 'sf_no_script_name' => false, 'sf_validation_error_prefix' => '<div class="vf_error">* ', 'sf_validation_error_suffix' => '</div>', 'sf_validation_error_class' => 'form_error', 'sf_validation_error_id_prefix' => 'error_for_', 'sf_cache' => false, 'sf_etag' => false, 'sf_web_debug' => false, 'sf_error_reporting' => 4095, 'sf_rich_text_js_dir' => 'js/tiny_mce', 'sf_prototype_web_dir' => '/sf/prototype', 'sf_admin_web_dir' => '/sf/sf_admin', 'sf_web_debug_web_dir' => '/sf/sf_web_debug', 'sf_calendar_web_dir' => '/sf/calendar', 'sf_standard_helpers' => array(0 => 'Partial', 1 => 'Cache', 2 => 'Form', 3 => 'Javascript', 4 => 'I18N', 5 => 'Url'), 'sf_enabled_modules' => array(0 => 'default'), 'sf_charset' => 'utf-8', 'sf_strip_comments' => true, 'sf_autoloading_functions' => NULL, 'sf_timeout' => 180000, 'sf_max_forwards' => 5, 'sf_path_info_array' => 'SERVER', 'sf_path_info_key' => 'PATH_INFO', 'sf_url_format' => 'PATH', 'sf_orm' => 'propel')); if (sfConfig::get('sf_logging_enabled', true)) { sfConfig::add(array('sf_logging_enabled' => true, 'sf_logging_level' => 'notice', 'sf_logging_rotate' => false, 'sf_logging_period' => 7, 'sf_logging_history' => 10, 'sf_logging_purge' => true)); $logger = sfLogger::getInstance(); $logger->setLogLevel(constant('SF_LOG_' . strtoupper(sfConfig::get('sf_logging_level')))); $log = new sfFileLogger(); $log->initialize(array('file' => 'C:\\xampp\\htdocs\\bm400\\log/pmbonline_dev.log')); $logger->registerLogger($log); } if ($file = $configCache->checkConfig($sf_app_config_dir_name . '/app.yml', true)) { include $file; } if (sfConfig::get('sf_i18n')) { sfConfig::add(array('sf_i18n_default_culture' => 'id', 'sf_i18n_source' => 'XLIFF', 'sf_i18n_debug' => false, 'sf_i18n_cache' => true, 'sf_i18n_untranslated_prefix' => '[T]', 'sf_i18n_untranslated_suffix' => '[/T]')); } foreach ((array) sfConfig::get('sf_autoloading_functions', array()) as $callable) { sfCore::addAutoloadCallable($callable); } ini_set('display_errors', $sf_debug ? 'on' : 'off'); error_reporting(sfConfig::get('sf_error_reporting')); if (!sfConfig::get('sf_in_bootstrap') && !$sf_debug && !sfConfig::get('sf_test')) {
<?php // auto-generated by sfDefineEnvironmentConfigHandler // date: 2009/08/15 10:45:02 sfConfig::add(array('sf_logging_enabled' => true, 'sf_logging_level' => 'debug', 'sf_logging_rotate' => false, 'sf_logging_period' => 7, 'sf_logging_history' => 10, 'sf_logging_purge' => true)); $logger = sfLogger::getInstance(); $logger->setLogLevel(constant('SF_LOG_' . strtoupper(sfConfig::get('sf_logging_level')))); $log = new sfWebDebugLogger(); $log->initialize(array()); $logger->registerLogger($log); $log = new sfFileLogger(); $log->initialize(array('file' => '/Users/takizo/Sites/coscupdemo/log/frontend_dev.log')); $logger->registerLogger($log);
/** * @see sfFileLogger */ protected function doLog($message, $priority) { parent::doLog($message, $priority); @chmod($this->file, 0666); }