push monitor to influxdb
This commit is contained in:
parent
38f034aa34
commit
8a180e0df7
|
@ -1,4 +1,5 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace JsonRpc\Middleware;
|
namespace JsonRpc\Middleware;
|
||||||
|
|
||||||
use Closure;
|
use Closure;
|
||||||
|
@ -13,48 +14,48 @@ use InfluxDB\Point;
|
||||||
*/
|
*/
|
||||||
class TunnelMiddleware
|
class TunnelMiddleware
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* Handle an incoming request.
|
* Handle an incoming request.
|
||||||
*
|
*
|
||||||
* @param \Illuminate\Http\Request $request
|
* @param \Illuminate\Http\Request $request
|
||||||
* @param \Closure $next
|
* @param \Closure $next
|
||||||
* @return mixed
|
* @return mixed
|
||||||
*/
|
*/
|
||||||
public function handle($request, Closure $next)
|
public function handle($request, Closure $next)
|
||||||
{
|
{
|
||||||
// Pre-Middleware Action
|
// Pre-Middleware Action
|
||||||
$response = $next($request);
|
$response = $next($request);
|
||||||
|
|
||||||
// Post-Middleware Action
|
// Post-Middleware Action
|
||||||
|
|
||||||
return $response;
|
return $response;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param \Illuminate\Http\Request $request
|
* @param \Illuminate\Http\Request $request
|
||||||
* @param \Closure $response
|
* @param \Closure $response
|
||||||
*/
|
*/
|
||||||
public function terminate($request, $response)
|
public function terminate($request, $response)
|
||||||
{
|
{
|
||||||
//过滤tool返回结果
|
//过滤tool返回结果
|
||||||
if ($response instanceof JsonResponse)
|
if ($response instanceof JsonResponse) {
|
||||||
{
|
if (app()->environment('dev', 'production')) {
|
||||||
$content = $response->getOriginalContent();
|
$content = $response->getOriginalContent();
|
||||||
$status = isset($content['error']) ? $content['error']['code'] : 200;
|
$status = isset($content['error']) ? $content['error']['code'] : 200;
|
||||||
|
$client = new \InfluxDB\Client("10.0.1.67");
|
||||||
|
$database = $client->selectDB('rpc_monitor');
|
||||||
|
$points = array(
|
||||||
|
new Point(
|
||||||
|
'monitor',
|
||||||
|
null,
|
||||||
|
['app' => env('APP_NAME'), 'status' => $status, 'env' => app()->environment()],
|
||||||
|
['content' => $request->getContent()]
|
||||||
|
)
|
||||||
|
);
|
||||||
|
$database->writePoints($points, Database::PRECISION_SECONDS);
|
||||||
|
}
|
||||||
|
|
||||||
$client = new \InfluxDB\Client('127.0.0.1', '8086');
|
}
|
||||||
$database = $client->selectDB('rpc_monitor');
|
}
|
||||||
$points = array(
|
|
||||||
new Point(
|
|
||||||
'monitor',
|
|
||||||
0.64,
|
|
||||||
['app' =>env('APP_NAME'), 'status' => $status],
|
|
||||||
['content' => $request->getContent()]
|
|
||||||
)
|
|
||||||
);
|
|
||||||
$result = $database->writePoints($points, Database::PRECISION_SECONDS);
|
|
||||||
app('rpc.logger')->info('rpc tunnel ctx ' [$result]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user