本文整理汇总了PHP中Symfony\Component\Console\Event\ConsoleExceptionEvent::getCommand方法的典型用法代码示例。如果您正苦于以下问题:PHP ConsoleExceptionEvent::getCommand方法的具体用法?PHP ConsoleExceptionEvent::getCommand怎么用?PHP ConsoleExceptionEvent::getCommand使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Symfony\Component\Console\Event\ConsoleExceptionEvent
的用法示例。
在下文中一共展示了ConsoleExceptionEvent::getCommand方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: onConsoleException
/**
* Logs exception events for AcmePhp commands.
*
* @param ConsoleExceptionEvent $event
*/
public function onConsoleException(ConsoleExceptionEvent $event)
{
if (!$this->isAcmePhpCommand($event->getCommand())) {
return;
}
$this->logger->error('Exception thrown while running command "{command}". Message: "{message}".', ['command' => $event->getCommand()->getName(), 'message' => $event->getException()->getMessage(), 'exception' => $event->getException()]);
}
示例2: onConsoleException
public function onConsoleException(ConsoleExceptionEvent $event)
{
$command = $event->getCommand();
$exception = $event->getException();
$message = sprintf('%s: %s (uncaught exception) at %s line %s while running console command `%s`', get_class($exception), $exception->getMessage(), $exception->getFile(), $exception->getLine(), $command->getName());
$this->logger->error($message, array('exception' => $exception));
}
示例3: onConsoleException
/**
* Method for handling the actual exceptions
*
* @param \Symfony\Component\Console\Event\ConsoleExceptionEvent $event [description]
*/
public function onConsoleException(ConsoleExceptionEvent $event)
{
$command = $event->getCommand();
$exception = $event->getException();
$this->client->notifyOnException($exception);
error_log(sprintf("command:%s has thrown %s in: %s:%d", $command->getName(), $exception->getMessage(), $exception->getFile(), $exception->getLine()));
}
示例4: onConsoleException
public function onConsoleException(ConsoleExceptionEvent $event)
{
$command = $event->getCommand();
if (in_array($command->getName(), ['dz:notification:on_day_end'], TRUE)) {
$exception = $event->getException();
$message = sprintf('`%s` [uncaught exception]: command `%s` throws `%s` at `%s` line `%s`', get_class($exception), $command->getName(), $exception->getMessage(), $exception->getFile(), $exception->getLine());
$this->logger->error($message, ['exception' => $exception]);
}
}
示例5: onConsoleException
/**
* @param ConsoleExceptionEvent $event
*/
public function onConsoleException(ConsoleExceptionEvent $event)
{
$command = $event->getCommand();
$exception = $event->getException();
// Log error with trace
$trace = MAUTIC_ENV == 'dev' ? "\n[stack trace]\n" . $exception->getTraceAsString() : '';
$message = sprintf('%s: %s (uncaught exception) at %s line %s while running console command `%s`%s', get_class($exception), $exception->getMessage(), $exception->getFile(), $exception->getLine(), $command->getName(), $trace);
// Use notice so it makes it to the log all "perttified" (using error spits it out to console and not the log)
$this->logger->notice($message);
}
示例6: onConsoleError
/**
* @param ConsoleExceptionEvent $event
*/
public function onConsoleError(ConsoleExceptionEvent $event)
{
$exception = $event->getException();
$command = $event->getCommand();
$output = $event->getOutput();
$this->logger->error(sprintf("error while executing %s -> %s", $command->getName(), $exception->getMessage()));
if ($this->config->get("common/debug")) {
return;
}
$output->writeln(sprintf("error while executing %s -> %s", $command->getName(), $exception->getMessage()));
}
示例7: onException
/**
* React to any console exceptions.
*
* @param ConsoleExceptionEvent $event
*/
public function onException(ConsoleExceptionEvent $event)
{
$exception = $event->getException();
// Replace Guzzle connect exceptions with a friendlier message. This
// also prevents the user from seeing two exceptions (one direct from
// Guzzle, one from RingPHP).
if ($exception instanceof ConnectException && strpos($exception->getMessage(), 'cURL error 6') !== false) {
$request = $exception->getRequest();
$event->setException(new ConnectionFailedException("Failed to connect to host: " . $request->getHost() . " \nPlease check your Internet connection.", $request));
$event->stopPropagation();
}
// Handle Guzzle client exceptions, i.e. HTTP 4xx errors.
if ($exception instanceof ClientException && ($response = $exception->getResponse())) {
$request = $exception->getRequest();
try {
$response->getBody()->seek(0);
$json = $response->json();
} catch (ParseException $e) {
$json = [];
}
// Create a friendlier message for the OAuth2 "Invalid refresh token"
// error.
if ($response->getStatusCode() === 400 && isset($json['error_description']) && $json['error_description'] === 'Invalid refresh token') {
$event->setException(new LoginRequiredException("Invalid refresh token: please log in again.", $request));
$event->stopPropagation();
} elseif ($response->getStatusCode() === 401) {
$event->setException(new LoginRequiredException("Unauthorized: please log in again.", $request));
$event->stopPropagation();
} elseif ($response->getStatusCode() === 403) {
$event->setException(new PermissionDeniedException("Permission denied. Check your project or environment permissions.", $request));
$event->stopPropagation();
}
}
// When an environment is found to be in the wrong state, perhaps our
// cache is old - we should invalidate it.
if ($exception instanceof EnvironmentStateException) {
$command = $event->getCommand();
if ($command instanceof PlatformCommand) {
$command->clearEnvironmentsCache();
}
}
}
示例8: onConsoleException
public function onConsoleException(ConsoleExceptionEvent $event)
{
$command = $event->getCommand();
$exception = $event->getException();
$message = sprintf('%s: %s (uncaught exception) at %s line %s while running console command `%s`', get_class($exception), $exception->getMessage(), $exception->getFile(), $exception->getLine(), $command->getName());
$this->logger->error($message, array('exception' => $exception));
$this->logger->error('Exception trace:');
// exception related properties
$trace = $exception->getTrace();
array_unshift($trace, array('function' => '', 'file' => $exception->getFile() !== null ? $exception->getFile() : 'n/a', 'line' => $exception->getLine() !== null ? $exception->getLine() : 'n/a', 'args' => array()));
for ($i = 0, $count = count($trace); $i < $count; ++$i) {
$class = isset($trace[$i]['class']) ? $trace[$i]['class'] : '';
$type = isset($trace[$i]['type']) ? $trace[$i]['type'] : '';
$function = $trace[$i]['function'];
$file = isset($trace[$i]['file']) ? $trace[$i]['file'] : 'n/a';
$line = isset($trace[$i]['line']) ? $trace[$i]['line'] : 'n/a';
$this->logger->error(sprintf(' %s%s%s() at %s:%s', $class, $type, $function, $file, $line));
}
$this->logger->error('');
$this->logger->error('');
}
示例9: onConsoleException
/**
* In case of an exception in scheduler console command
* the message should be saved into the scheduler entity
*
* @param ConsoleExceptionEvent $event
*/
public function onConsoleException(ConsoleExceptionEvent $event)
{
/** @var SchedulerCommand $command */
$command = $event->getCommand();
if ($command->getName() != 'campaignchain:scheduler') {
return;
}
// if scheduler is null exception happened in early stage
// maybe email should be sent
if (!$command->getScheduler()) {
return;
}
/** @var Scheduler $scheduler */
$scheduler = $command->getScheduler();
$scheduler->setMessage($event->getException()->getMessage());
$scheduler->setStatus(Scheduler::STATUS_ERROR);
$scheduler->setExecutionEnd(new \DateTime());
$this->em->persist($scheduler);
$this->em->flush();
$command->getIo()->error($scheduler->getMessage());
$this->logger->critical($scheduler->getMessage());
}
示例10: onConsoleException
/**
* @param \Symfony\Component\Console\Event\ConsoleExceptionEvent $event
*
* @return void
*/
public function onConsoleException(ConsoleExceptionEvent $event)
{
$exception = $event->getException();
$this->getLogger()->error(sprintf('CLI command "%s" exception, message "%s"', $event->getCommand()->getName(), $exception->getMessage()), ['exception' => $exception]);
}
示例11: onConsoleCommandException
/**
* Fires when an exception throws on command execution scope ($command->run())
*
* @param ConsoleExceptionEvent $event ConsoleExceptionEvent instance
*
* @return void
*/
public function onConsoleCommandException(ConsoleExceptionEvent $event)
{
$command = $event->getCommand();
$container = $command->getApplication()->getContainer();
$container['monolog']->addError(sprintf('Command \'%s\' ErrorMsg: \'%s\'', $command->getName(), $event->getException()->getMessage()));
}