我刚刚在Slack中设置了一个网络钩子,以便从我的Laravel应用程序发送日志记录。
当日志行执行时,会弹出此错误:
RuntimeException
Curl error (code 3): <url> malformed
源:
vendormonologmonologsrcMonologHandlerCurlUtil.php
{
while ($retries--) {
if (curl_exec($ch) === false) {
$curlErrno = curl_errno($ch);
if (false === in_array($curlErrno, self::$retriableErrorCodes, true) || !$retries) {
$curlError = curl_error($ch);
if ($closeAfterDone) {
curl_close($ch);
}
throw new RuntimeException(sprintf('Curl error (code %s): %s', $curlErrno, $curlError));
}
continue;
}
if ($closeAfterDone) {
curl_close($ch);
}
break;
}
}
日志行:
Log::channel('slack')->info('hi');
配置是这样的:
'slack' => [
'driver' => 'slack',
'url' => env('https://hooks.slack.com/services/TC3S00PFC/BC411TH4M/YXAu...'),
'username' => 'app',
'emoji' => ':boom:',
'level' => 'info',
],
我尝试使用不同的网络钩子网址,用户名。 Curl在php中被激活。 没有其他线索...
如果字符串未在 .env 中定义,env(( 将返回 null,因此您只需将 url 设置为 null。也许你打算做类似的事情
'url' => 'https://hooks.slack.com/services/TC3S00...'
或
'url' => env(SLACK_URL, 'https://hooks.slack.com/services/TC3S00...')
(并在 .env 中有一个条目用于SLACK_URL(