mcpField
L
laravel:exception-handling-and-logging

laravel:exception-handling-and-logging

github.com/jpcaparas开发157142 次安装18 周前更新
代码仓库

关于 laravel:exception-handling-and-logging

面向 Laravel 开发的异常与日志处理技能,强调提供可操作的上下文。内容包括领域专用异常、结构化日志、分流嘈杂日志,以及返回适合 API 的错误响应。

主要功能

  1. 01定义领域专用异常
  2. 02为日志添加结构化上下文
  3. 03避免记录密钥等机密
  4. 04将嘈杂日志分流
  5. 05生成适合 API 的响应

适用场景

  1. 01记录预期的领域错误
  2. 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