Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
dfe15f7e88 | ||
|
|
4d7365921e | ||
|
|
d613f3c26f |
@@ -22,6 +22,7 @@ use think\response\Json;
|
|||||||
*/
|
*/
|
||||||
class Log extends AdminController
|
class Log extends AdminController
|
||||||
{
|
{
|
||||||
|
protected array $ignoreLog = ['record'];
|
||||||
|
|
||||||
public function __construct(App $app)
|
public function __construct(App $app)
|
||||||
{
|
{
|
||||||
@@ -98,7 +99,7 @@ class Log extends AdminController
|
|||||||
/**
|
/**
|
||||||
* @NodeAnnotation(title="框架日志")
|
* @NodeAnnotation(title="框架日志")
|
||||||
*/
|
*/
|
||||||
public function record(): string
|
public function record(): Json|string
|
||||||
{
|
{
|
||||||
return (new \Wolfcode\PhpLogviewer\thinkphp\LogViewer())->fetch();
|
return (new \Wolfcode\PhpLogviewer\thinkphp\LogViewer())->fetch();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,9 +7,11 @@ use app\admin\service\annotation\NodeAnnotation;
|
|||||||
use app\admin\service\SystemLogService;
|
use app\admin\service\SystemLogService;
|
||||||
use app\common\traits\JumpTrait;
|
use app\common\traits\JumpTrait;
|
||||||
use app\Request;
|
use app\Request;
|
||||||
|
use ReflectionClass;
|
||||||
use Closure;
|
use Closure;
|
||||||
use Doctrine\Common\Annotations\AnnotationReader;
|
use Doctrine\Common\Annotations\AnnotationReader;
|
||||||
use Doctrine\Common\Annotations\DocParser;
|
use Doctrine\Common\Annotations\DocParser;
|
||||||
|
use ReflectionException;
|
||||||
|
|
||||||
class SystemLog
|
class SystemLog
|
||||||
{
|
{
|
||||||
@@ -26,9 +28,13 @@ class SystemLog
|
|||||||
'mobile',
|
'mobile',
|
||||||
];
|
];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @throws ReflectionException
|
||||||
|
*/
|
||||||
public function handle(Request $request, Closure $next)
|
public function handle(Request $request, Closure $next)
|
||||||
{
|
{
|
||||||
$params = $request->param();
|
$response = $next($request);
|
||||||
|
$params = $request->param();
|
||||||
if (isset($params['s'])) unset($params['s']);
|
if (isset($params['s'])) unset($params['s']);
|
||||||
foreach ($params as $key => $val) {
|
foreach ($params as $key => $val) {
|
||||||
in_array($key, $this->sensitiveParams) && $params[$key] = "***********";
|
in_array($key, $this->sensitiveParams) && $params[$key] = "***********";
|
||||||
@@ -39,9 +45,18 @@ class SystemLog
|
|||||||
if (env('APP_DEBUG')) {
|
if (env('APP_DEBUG')) {
|
||||||
trace(['url' => $url, 'method' => $method, 'params' => $params,], 'requestDebugInfo');
|
trace(['url' => $url, 'method' => $method, 'params' => $params,], 'requestDebugInfo');
|
||||||
}
|
}
|
||||||
$response = $next($request);
|
|
||||||
if ($request->isAjax()) {
|
if ($request->isAjax()) {
|
||||||
if (in_array($method, ['post', 'put', 'delete'])) {
|
if (in_array($method, ['post', 'put', 'delete'])) {
|
||||||
|
|
||||||
|
$controller = $request->controller();
|
||||||
|
if (str_contains($controller, '.')) $controller = str_replace('.', '\\', $controller);
|
||||||
|
$action = $request->action();
|
||||||
|
$controllerClass = 'app\\admin\\controller\\' . $controller;
|
||||||
|
$classObj = new ReflectionClass($controllerClass);
|
||||||
|
$properties = $classObj->getDefaultProperties();
|
||||||
|
$ignoreLog = $properties['ignoreLog'] ?? [];
|
||||||
|
if (in_array($action, $ignoreLog)) return $response;
|
||||||
|
|
||||||
$title = '';
|
$title = '';
|
||||||
try {
|
try {
|
||||||
$pathInfo = $request->pathinfo();
|
$pathInfo = $request->pathinfo();
|
||||||
|
|||||||
@@ -37,7 +37,7 @@
|
|||||||
"qiniu/php-sdk": "v7.11.0",
|
"qiniu/php-sdk": "v7.11.0",
|
||||||
"ext-mysqli": "*",
|
"ext-mysqli": "*",
|
||||||
"ext-pdo": "*",
|
"ext-pdo": "*",
|
||||||
"wolf-leo/phplogviewer": "^0.05.0"
|
"wolf-leo/phplogviewer": "^0.10.0"
|
||||||
},
|
},
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"symfony/var-dumper": ">=4.2",
|
"symfony/var-dumper": ">=4.2",
|
||||||
|
|||||||
Reference in New Issue
Block a user