>  기사  >  백엔드 개발  >  laravel 프레임워크에서 인터페이스 API, 호출 빈도 및 민감한 요청 매개변수를 모니터링하는 방법을 묻고 싶습니다.

laravel 프레임워크에서 인터페이스 API, 호출 빈도 및 민감한 요청 매개변수를 모니터링하는 방법을 묻고 싶습니다.

WBOY
WBOY원래의
2016-12-01 00:56:332092검색

<code>http://test.php
method:post
param:{"name":"12333","id":"2"}

需要监控的情况
1.如果用户进行创建数据或更新数据,就要监控
2.对价格进行修改需要监控,然后发有邮件通知接口负责人,"有人修改了商品价格"


目前已经实现了,
request:  uri  method ip port 的记录

param : 请求参数

result 响应接口

user_id 接口请求者</code>

이 인터페이스의 모니터링을 개선하는 방법을 알려주시겠어요? 감사합니다.

답글 내용:

<code>http://test.php
method:post
param:{"name":"12333","id":"2"}

需要监控的情况
1.如果用户进行创建数据或更新数据,就要监控
2.对价格进行修改需要监控,然后发有邮件通知接口负责人,"有人修改了商品价格"


目前已经实现了,
request:  uri  method ip port 的记录

param : 请求参数

result 响应接口

user_id 接口请求者</code>

이 인터페이스의 모니터링을 개선하는 방법을 알려주시겠어요? 감사합니다.

간단하게 답변해드리며, 질문자께서 직접 관련 서류를 확인하실 수 있습니다

  1. 인터페이스 주파수 제한

    • Laravel 5.2 이상에는 throttle 미들웨어 제어

    • 가 포함되어 있습니다.
    • Laravel 5는 타사 확장 패키지를 사용하여 구현할 수 있습니다 https://github.com/GrahamCampbell/Laravel-Throttle

  2. 인터페이스 업데이트를 직접 모니터링할 수 있습니다Eloquent 事件. 관련 이벤트 문서 주소는 https://laravel-china.org/docs/5.1/eloquent#events

    입니다.
    • 예를 들어 User 的 saving 이벤트를 듣고 User의 닉네임이 수정되었는지 확인해보세요. 간략한 코드는 다음과 같습니다

    <code>User::saving(function(User $user){
        // 判断昵称是否修改
        if ($user->isDirty('nick_name')) {
            $old_nick_name = $user->getOriginal('nick_name'); // 原始值
            $new_nick_name = $user->nick_name;   // 新值
            Mail::raw("$user->name 把昵称 $old_nick_name 修改为 $new_nick_name"); // 发送邮件
        }
    });</code>
  3. 요청 매개변수, 각 Request 각 인터페이스 rules, 통합 차단 및 처리

  4. 에 대한 매개변수 규칙을 정의할 수 있습니다.

코드로 구현할 수는 없나요? 성능을 고려한다면 메시지 대기열
을 사용하거나 로그를 추가하고 OP가 로그를 모니터링하고 일치하는 이메일을 보내도록 할 수 있습니다

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.