在使用Laravel(7)文件系统调用时,如何查看调试信息或错误信息?



我正在使用Laravel文件系统调用-例如:Storage::disk('sftp')->put,它工作正常,但我想知道如何查看调试或错误信息,如果有需要?

举个例子,如果文件上传失败,我怎么看?当我第一次写代码时,它不工作,没有Laravel异常屏幕,Laravel .log中没有任何内容。

我也是。

我使用Laravel存储库与league/flysystem-sftp的sftp传输。这是有问题的行。

Storage::disk(self::REMOTE_DISK)->putFileAs($destFolder, $this->localFilePath, $destFilename);

大多数时候一切都很好。文件从本地复制到远程没有任何问题。

但有时会出现一个问题,我不明白在传输过程中发生了什么。(此时)我所能做的就是

$result = Storage::disk(self::REMOTE_DISK)->putFileAs($destFolder, $this->localFilePath, $destFilename);
if ($result === false) {
$exception = new FileUploadFailureException("file upload has failed");
}

有没有更好的方法来调试一个sftp连接故障?

我在FileSystemAdapter:

中注意到了这一点
} catch (UnableToWriteFile|UnableToSetVisibility $e) {
throw_if($this->throwsExceptions(), $e);
return false;
}

throwsExceptions()检查$this->config['throw'],所以在config/filesystems.php我添加到我的s3桶'throw' => true,的配置数组,现在错误被抛出,而不仅仅是返回false。

's3' => [
'driver' => 's3',
'key' => env('AWS_ACCESS_KEY_ID'),
'secret' => env('AWS_SECRET_ACCESS_KEY'),
'region' => 'us-east-1',
'bucket' => 'abcd',
'throw' => true, // Failures will throw exceptions
],

相关内容

最新更新