示例#1
0
 public static function getInstance()
 {
     if (is_null(self::$s_dwh_client)) {
         self::$s_dwh_client = new KDwhClient(self::$s_file_name);
     }
     return self::$s_dwh_client;
 }
示例#2
0
 protected function logToDWH($event_id, $filePath = null, $idleTime = null)
 {
     $event = new KBatchEvent();
     $event->value_1 = $idleTime;
     $event->value_2 = $filePath;
     $event->batch_client_version = "1.0";
     $event->batch_event_time = time();
     $event->batch_event_type_id = $event_id;
     $event->batch_session_id = $this->config->sessionKey;
     $event->batch_id = $this->config->batchIndex;
     $event->batch_name = $this->config->batchName;
     $event->section_id = $this->config->workerId;
     $event->batch_type = $this->config->workerType;
     $event->location_id = $this->config->schedulerId;
     $event->host_name = $this->config->schedulerName;
     KDwhClient::send($event);
 }
 protected function onEvent(KBatchEvent $event, KSchedularTaskConfig $taskConfig)
 {
     $event->batch_client_version = "1.0";
     $event->batch_event_time = time();
     $event->batch_name = $taskConfig->name;
     $event->section_id = $taskConfig->id;
     $event->batch_type = $taskConfig->type;
     $event->location_id = $this->schedulerConfig->getId();
     $event->host_name = $this->schedulerConfig->getName();
     KDwhClient::send($event);
 }
示例#4
0
 /**
  * @param KSchedularTaskConfig $taskConfig
  */
 public function __construct($taskConfig = null)
 {
     /*
      *  argv[0] - the script name
      *  argv[1] - serialized KSchedulerConfig config
      */
     global $argv, $g_context;
     $this->sessionKey = uniqid('sess');
     $this->start = microtime(true);
     if (is_null($taskConfig)) {
         $data = gzuncompress(base64_decode($argv[1]));
         self::$taskConfig = unserialize($data);
     } else {
         self::$taskConfig = $taskConfig;
     }
     if (!self::$taskConfig) {
         die("Task config not supplied");
     }
     date_default_timezone_set(self::$taskConfig->getTimezone());
     // clear seperator between executions
     KalturaLog::debug('___________________________________________________________________________________');
     KalturaLog::stderr('___________________________________________________________________________________', KalturaLog::DEBUG);
     KalturaLog::info(file_get_contents(dirname(__FILE__) . "/../VERSION.txt"));
     if (!self::$taskConfig instanceof KSchedularTaskConfig) {
         KalturaLog::err('config is not a KSchedularTaskConfig');
         die;
     }
     KalturaLog::debug("set_time_limit({" . self::$taskConfig->maximumExecutionTime . "})");
     set_time_limit(self::$taskConfig->maximumExecutionTime);
     KalturaLog::info('Batch index [' . $this->getIndex() . '] session key [' . $this->sessionKey . ']');
     self::$kClientConfig = new KalturaConfiguration();
     self::$kClientConfig->setLogger($this);
     self::$kClientConfig->serviceUrl = self::$taskConfig->getServiceUrl();
     self::$kClientConfig->curlTimeout = self::$taskConfig->getCurlTimeout();
     if (isset(self::$taskConfig->clientConfig)) {
         foreach (self::$taskConfig->clientConfig as $attr => $value) {
             self::$kClientConfig->{$attr} = $value;
         }
     }
     self::$kClient = new KalturaClient(self::$kClientConfig);
     self::$kClient->setPartnerId(self::$taskConfig->getPartnerId());
     self::$clientTag = 'batch: ' . self::$taskConfig->getSchedulerName() . ' ' . get_class($this) . " index: {$this->getIndex()} sessionId: " . UniqueId::get();
     self::$kClient->setClientTag(self::$clientTag);
     //$ks = self::$kClient->session->start($secret, "user-2", KalturaSessionType::ADMIN);
     $ks = $this->createKS();
     self::$kClient->setKs($ks);
     KDwhClient::setEnabled(self::$taskConfig->getDwhEnabled());
     KDwhClient::setFileName(self::$taskConfig->getDwhPath());
     $this->onBatchUp();
     KScheduleHelperManager::saveRunningBatch($this->getName(), $this->getIndex());
 }
示例#5
0
 /**
  * @param KSchedularTaskConfig $taskConfig
  */
 public function __construct($taskConfig = null)
 {
     parent::__construct($taskConfig);
     KalturaLog::debug('This batch index: ' . $this->getIndex());
     KalturaLog::debug('This session key: ' . $this->sessionKey);
     $this->kClientConfig = new KalturaConfiguration();
     $this->kClientConfig->setLogger($this);
     $this->kClientConfig->serviceUrl = $this->taskConfig->getServiceUrl();
     $this->kClientConfig->curlTimeout = $this->taskConfig->getCurlTimeout();
     $this->kClientConfig->clientTag = 'batch: ' . $this->taskConfig->getSchedulerName();
     $this->kClient = new KalturaClient($this->kClientConfig);
     //$ks = $this->kClient->session->start($secret, "user-2", KalturaSessionType::ADMIN);
     $ks = $this->createKS();
     $this->kClient->setKs($ks);
     KDwhClient::setFileName($this->taskConfig->getDwhPath());
     $this->onBatchUp();
     KScheduleHelperManager::saveRunningBatch($this->taskConfig->getCommandsDir(), $this->getName(), $this->getIndex());
 }
示例#6
0
文件: test1.php 项目: DBezemer/server
/**
 * 
 * @package Scheduler
 * @subpackage Debug
 */
require_once dirname(__FILE__) . "/../KDwhClient.class.php";
require_once dirname(__FILE__) . "/../KBatchEvent.class.php";
KDwhClient::setFileName("/var/log/dwh/dwh_batch_events");
$param = $argv[1];
$loop_size = $argv[2];
$session_id = null;
for ($i = 0; $i < $loop_size; $i++) {
    if ($i % 10 == 0) {
        $session_id = md5("abc" . time());
    }
    $event = new KBatchEvent();
    $event->batch_client_version = "123|{$param}";
    $event->batch_event_time = time();
    $event->batch_event_type_id = rand(1, 10);
    $event->batch_name = "import";
    $event->batch_id = $i % 8;
    $event->batch_session_id = $session_id;
    $event->entry_id = rand(1000, 10000);
    $event->host_name = "host {$param}";
    $event->location_id = "1";
    $event->partner_id = rand(1, 10);
    $event->section_id = "1";
    KDwhClient::send($event);
    usleep(200);
}
 /**
  * @param KSchedularTaskConfig $taskConfig
  */
 public function __construct($taskConfig = null)
 {
     /*
      *  argv[0] - the script name
      *  argv[1] - serialized KSchedulerConfig config
      */
     global $argv, $g_context;
     $this->sessionKey = uniqid('sess');
     $this->start = microtime(true);
     if (is_null($taskConfig)) {
         $this->taskConfig = unserialize(base64_decode($argv[1]));
     } else {
         $this->taskConfig = $taskConfig;
     }
     if (!$this->taskConfig) {
         die("Task config not supplied");
     }
     date_default_timezone_set($this->taskConfig->getTimezone());
     // clear seperator between executions
     KalturaLog::debug('___________________________________________________________________________________');
     KalturaLog::info(file_get_contents(dirname(__FILE__) . "/../VERSION.txt"));
     if (!$this->taskConfig instanceof KSchedularTaskConfig) {
         KalturaLog::err('config is not a KSchedularTaskConfig');
         die;
     }
     KalturaLog::debug("set_time_limit({$this->taskConfig->maximumExecutionTime})");
     set_time_limit($this->taskConfig->maximumExecutionTime);
     KalturaLog::debug('This batch index: ' . $this->getIndex());
     KalturaLog::debug('This session key: ' . $this->sessionKey);
     $this->kClientConfig = new KalturaConfiguration($this->taskConfig->getPartnerId());
     $this->kClientConfig->setLogger($this);
     $this->kClientConfig->serviceUrl = $this->taskConfig->getServiceUrl();
     $this->kClientConfig->curlTimeout = $this->taskConfig->getCurlTimeout();
     $this->kClientConfig->clientTag = 'batch: ' . $this->taskConfig->getSchedulerName();
     $this->kClient = new KalturaClient($this->kClientConfig);
     //$ks = $this->kClient->session->start($secret, "user-2", KalturaSessionType::ADMIN);
     $ks = $this->createKS();
     $this->kClient->setKs($ks);
     KDwhClient::setEnabled($this->taskConfig->getDwhEnabled());
     KDwhClient::setFileName($this->taskConfig->getDwhPath());
     $this->onBatchUp();
     KScheduleHelperManager::saveRunningBatch($this->taskConfig->getCommandsDir(), $this->getName(), $this->getIndex());
 }