• Модуль: scale
  • Путь к файлу: ~/bitrix/modules/scale/lib/actionsdata.php
  • Класс: BitrixScaleActionsData
  • Вызов: ActionsData::getActionState
static function getActionState($bid)
{
	$result = [];
	$shellAdapter = new ShellAdapter();
	$execRes = $shellAdapter->syncExec("sudo -u root /opt/webdir/bin/bx-process -a status -t ".$bid." -o json");
	$data = $shellAdapter->getLastOutput();

	if($execRes)
	{
		$arData = json_decode($data, true);

		if(isset($arData["params"][$bid]))
		{
			$result = $arData["params"][$bid];
		}

		if($result["status"] === "finished")
		{
			Logger::addRecord(
				Logger::LOG_LEVEL_INFO,
				"SCALE_ACTION_CHECK_STATE",
				$bid,
				Loc::getMessage("SCALE_ACTIONSDATA_ACTION_FINISHED")
			);
		}
		elseif($result["status"] === "error")
		{
			Logger::addRecord(
				Logger::LOG_LEVEL_ERROR,
				"SCALE_ACTION_CHECK_STATE",
				$bid,
				Loc::getMessage("SCALE_ACTIONSDATA_ACTION_ERROR")
			);
		}

		if(self::$logLevel >= Logger::LOG_LEVEL_DEBUG)
		{
			Logger::addRecord(Logger::LOG_LEVEL_DEBUG, "SCALE_ACTION_CHECK_STATE", $bid, $data);
		}
	}

	return $result;
}