SwiftMailer spool:send 命令 - 如何查看已发送邮件的详细信息?详细选项不起作用
SwiftMailer spool:send command - how to see details about sent messages? Verbose option not working
这是 SwiftMailer 发送命令的 --help
选项的输出:
$ php bin/console swiftmailer:spool:send -help
Description:
Sends emails from the spool
Usage:
swiftmailer:spool:send [options]
Options:
--message-limit=MESSAGE-LIMIT The maximum number of messages to send.
--time-limit=TIME-LIMIT The time limit for sending messages (in seconds).
--recover-timeout=RECOVER-TIMEOUT The timeout for recovering messages that have taken too long to send (in seconds).
--mailer=MAILER The mailer name.
--transport=TRANSPORT The service of the transport to use to send the messages.
-h, --help Display this help message
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi Force ANSI output
--no-ansi Disable ANSI output
-n, --no-interaction Do not ask any interactive question
-e, --env=ENV The Environment name. [default: "prod"]
--no-debug Switches off debug mode.
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Help:
The swiftmailer:spool:send command sends all emails from the spool.
php bin/console swiftmailer:spool:send --message-limit=10 --time-limit=10 --recover-timeout=900 --mailer=default
我想 运行 使用调试级别的详细信息。但是,我得到的输出与我正常 运行 命令时的输出完全相同:
$ php bin/console swiftmailer:spool:send -vvv
[2021-10-15 12:11:22] Processing default mailer spool...
2 emails sent
我希望详细选项至少显示有关正在发送的消息的一些详细信息...有谁知道不同详细级别应该显示什么样的输出?我是否使用不当?如果是,获得详细输出的正确方法是什么?
详细级别与特定命令无关。它是 symfony/console
组件的一部分,只是一种让您(作为开发人员)控制对用户输入做出反应的方式。
并非所有提供的命令都利用它并且并不总是对其做出反应。
如果你往里看 Symfony\Bundle\SwiftmailerBundle\Command\SendEmailCommand.php
你不会找到
都没有
if($this->io->getVerbosity()) { //... }
也不
if($this->io->isVerbose()) { //... }
也不
if($this->io->isVeryVerbose()) { //... }
所以 -vvv
在 swiftmailer:spool:send
中根本没有逻辑
所以一般来说,更详细的信息只会给你更多关于错误的信息,例如如果抛出任何异常,则堆栈跟踪。 ...除非您在自己的命令中实施了一些检查。
这是 SwiftMailer 发送命令的 --help
选项的输出:
$ php bin/console swiftmailer:spool:send -help
Description:
Sends emails from the spool
Usage:
swiftmailer:spool:send [options]
Options:
--message-limit=MESSAGE-LIMIT The maximum number of messages to send.
--time-limit=TIME-LIMIT The time limit for sending messages (in seconds).
--recover-timeout=RECOVER-TIMEOUT The timeout for recovering messages that have taken too long to send (in seconds).
--mailer=MAILER The mailer name.
--transport=TRANSPORT The service of the transport to use to send the messages.
-h, --help Display this help message
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi Force ANSI output
--no-ansi Disable ANSI output
-n, --no-interaction Do not ask any interactive question
-e, --env=ENV The Environment name. [default: "prod"]
--no-debug Switches off debug mode.
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Help:
The swiftmailer:spool:send command sends all emails from the spool.
php bin/console swiftmailer:spool:send --message-limit=10 --time-limit=10 --recover-timeout=900 --mailer=default
我想 运行 使用调试级别的详细信息。但是,我得到的输出与我正常 运行 命令时的输出完全相同:
$ php bin/console swiftmailer:spool:send -vvv
[2021-10-15 12:11:22] Processing default mailer spool...
2 emails sent
我希望详细选项至少显示有关正在发送的消息的一些详细信息...有谁知道不同详细级别应该显示什么样的输出?我是否使用不当?如果是,获得详细输出的正确方法是什么?
详细级别与特定命令无关。它是 symfony/console
组件的一部分,只是一种让您(作为开发人员)控制对用户输入做出反应的方式。
并非所有提供的命令都利用它并且并不总是对其做出反应。
如果你往里看 Symfony\Bundle\SwiftmailerBundle\Command\SendEmailCommand.php
你不会找到
都没有
if($this->io->getVerbosity()) { //... }
也不
if($this->io->isVerbose()) { //... }
也不
if($this->io->isVeryVerbose()) { //... }
所以 -vvv
在 swiftmailer:spool:send
所以一般来说,更详细的信息只会给你更多关于错误的信息,例如如果抛出任何异常,则堆栈跟踪。 ...除非您在自己的命令中实施了一些检查。