关于 laravel:exception-handling-and-logging
面向 Laravel 开发的异常与日志处理技能,强调提供可操作的上下文。内容包括领域专用异常、结构化日志、分流嘈杂日志,以及返回适合 API 的错误响应。
主要功能
- 01定义领域专用异常
- 02为日志添加结构化上下文
- 03避免记录密钥等机密
- 04将嘈杂日志分流
- 05生成适合 API 的响应
适用场景
- 01记录预期的领域错误
- 02为未找到模型返回 API 响应
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ jpcaparas/ superpowers-laravel --skill laravel:exception-handling-and-logging安装后在 Claude Code 中输入/laravel:exception-handling-and-logging确认已加载。
详细介绍
异常处理与日志记录
将错误视为一等信号;提供上下文和补救途径。
命令
// app/Exceptions/Handler.php
public function register(): void
{
$this->reportable(function (DomainException $e) {
Log::warning('domain exception', ['code' => $e->getCode()]);
});
$this->renderable(function (ModelNotFoundException $e, $request) {
if ($request->expectsJson()) {
return response()->json(['message' => 'Not Found'], 404);
}
});
}
模式
- 对预期的错误路径使用特定于领域的异常
- 为日志添加结构化上下文;避免记录机密信息
- 将嘈杂的日志路由到单独的通道;确保默认日志具有可操作性
- 在
renderable()中转换为适合 API 的响应
评论
支持 Markdown