Skip to content

Commit 7865116

Browse files
minor fix
1 parent 1664f79 commit 7865116

File tree

2 files changed

+27
-13
lines changed

2 files changed

+27
-13
lines changed

src/Console/ServerMonitorCommand.php

+15-12
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
namespace Sarfraznawaz2005\Meter\Console;
44

55
use Illuminate\Console\Command;
6+
use Sarfraznawaz2005\Meter\Meter;
67
use Sarfraznawaz2005\Meter\Monitors\CpuMonitor;
78
use Sarfraznawaz2005\Meter\Monitors\DiskSpaceMonitor;
89
use Sarfraznawaz2005\Meter\Monitors\HttpConnectionsMonitor;
@@ -13,22 +14,24 @@ class ServerMonitorCommand extends Command
1314
protected $signature = 'meter:servermonitor';
1415
protected $description = 'Checks server stuff such as disk space, cpu usage, memory, etc';
1516

17+
public static $serverMonitors = [
18+
CpuMonitor::class,
19+
DiskSpaceMonitor::class,
20+
MemoryMonitor::class,
21+
HttpConnectionsMonitor::class,
22+
];
23+
1624
public function handle()
1725
{
18-
$app = app();
19-
20-
$serverMonitors = [
21-
CpuMonitor::class,
22-
DiskSpaceMonitor::class,
23-
MemoryMonitor::class,
24-
HttpConnectionsMonitor::class,
25-
];
26+
if (Meter::isMonitoring()) {
27+
$app = app();
2628

27-
foreach ($serverMonitors as $monitor) {
28-
if (config('meter.monitors.' . $monitor . '.enabled', true)) {
29-
$monitor = $app->make($monitor);
29+
foreach (static::$serverMonitors as $monitor) {
30+
if (config('meter.monitors.' . $monitor . '.enabled', true)) {
31+
$monitor = $app->make($monitor);
3032

31-
$monitor->register($app);
33+
$monitor->register($app);
34+
}
3235
}
3336
}
3437
}

src/Traits/RegistersMonitors.php

+12-1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
namespace Sarfraznawaz2005\Meter\Traits;
44

55
use Illuminate\Contracts\Foundation\Application;
6+
use Sarfraznawaz2005\Meter\Console\ServerMonitorCommand;
67

78
trait RegistersMonitors
89
{
@@ -32,6 +33,8 @@ public static function hasMonitor($class): bool
3233
*/
3334
protected static function registerMonitors($app)
3435
{
36+
$serverMonitors = ServerMonitorCommand::$serverMonitors;
37+
3538
foreach (config('meter.monitors') as $key => $monitor) {
3639

3740
if (is_string($key) && $monitor === false) {
@@ -46,7 +49,15 @@ protected static function registerMonitors($app)
4649
'options' => is_array($monitor) ? $monitor : [],
4750
]);
4851

49-
static::$monitors[] = get_class($monitor);
52+
$class = get_class($monitor);
53+
54+
// exclude server monitors
55+
if (in_array($class, $serverMonitors, true)) {
56+
unset($monitor);
57+
continue;
58+
}
59+
60+
static::$monitors[] = $class;
5061

5162
$monitor->register($app);
5263
}

0 commit comments

Comments
 (0)