Completed
Push — master ( f4ab91...b02197 )
by Mahmoud
03:34
created

RequestsDebuggerTrait::runRequestDebugger()   C

Complexity

Conditions 8
Paths 17

Size

Total Lines 43
Code Lines 23

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
dl 0
loc 43
c 1
b 0
f 0
rs 5.3846
cc 8
eloc 23
nc 17
nop 2
1
<?php
2
3
namespace App\Containers\Debugger\Traits;
4
5
use App;
6
use DB;
7
use Illuminate\Support\Facades\Config;
8
use Log;
9
10
/**
11
 * Class RequestsDebuggerTrait.
12
 *
13
 * @author  Mahmoud Zalt <[email protected]>
14
 */
15
trait RequestsDebuggerTrait
16
{
17
18
    /**
19
     * @param $request
20
     * @param $response
21
     */
22
    public function runRequestDebugger($request, $response)
23
    {
24
25
        if (App::environment() != 'testing' && Config::get('app.debug') === true) {
26
27
            Log::debug('');
28
            Log::debug('');
29
            Log::debug('REQUEST START------------------------------------------------------');
30
31
            // Endpoint URL:
32
            Log::debug('URL: ' . $request->getMethod() . ' ' . $request->fullUrl());
33
34
            // Request Device IP:
35
            Log::debug('IP: ' . $request->ip());
36
37
            // Request Headers:
38
            Log::debug('App Headers: ');
39
            $authHead = $request->header('Authorization');
40
            $end = $authHead ? '...' : 'N/A';
41
            Log::debug('   Authorization = ' . substr($authHead, 0, 80) . $end);
42
43
            // Request Data:
44
            if ($request->all()) {
45
                $data = http_build_query($request->all(), '', ' ; ');
46
            } else {
47
                $data = 'N/A';
48
            }
49
            Log::debug('Request Data: ' . $data);
50
51
            // Authenticated User:
52
            if ($request->user()) {
53
                $user = 'ID: ' . $request->user()->id;
54
            } else {
55
                $user = 'N/A';
56
            }
57
            Log::debug('Authenticated User: ' . $user);
58
59
            // Response Content:
60
            if ($response && method_exists($response, 'content')) {
61
                Log::debug('Response: ' . substr($response->content(), 0, 700) . '...');
62
            }
63
        }
64
    }
65
66
}
67