Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions src/Helpers/FilterHelper.php
Original file line number Diff line number Diff line change
Expand Up @@ -229,6 +229,13 @@ public static function recordOutboundRequestResponseBody($url, $status_code, $du
}, false);
}

public static function recordCustomEvent(string $name, array $meta = []): bool
{
return static::recordEvent(function () use ($name, $meta) {
return app(LaritorOverride::class)->recordCustomEvent($name, $meta);
});
}

public static function whitelistedVendors(): array
{
return [];
Expand Down
3 changes: 2 additions & 1 deletion src/Laritor.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@

class Laritor
{
public const VERSION = '4.0.3';
public const VERSION = '4.1.0';

/**
* @var array
Expand Down Expand Up @@ -412,6 +412,7 @@ public function filterEvents()
RequestRecorder::$eventType => FilterHelper::recordRequest($event['request_instance'], $event['response_instance'], $event['response']['status_code'], $event['request']['duration']),
ScheduledTaskRecorder::$eventType => FilterHelper::recordCommandOrScheduledTask($event['task'], $event['status'], $event['duration'] ?? 0),
SchedulerRecorder::$eventType => FilterHelper::recordTaskScheduler(),
self::CUSTOM_EVENT => FilterHelper::recordCustomEvent($event['name'], $event),
default => false
};

Expand Down
5 changes: 5 additions & 0 deletions src/Override/DefaultOverride.php
Original file line number Diff line number Diff line change
Expand Up @@ -283,4 +283,9 @@ public function whitelistedVendors(): array
{
return [];
}

public function recordCustomEvent(string $name, array $meta = []): bool
{
return true;
}
}
2 changes: 2 additions & 0 deletions src/Override/LaritorOverride.php
Original file line number Diff line number Diff line change
Expand Up @@ -146,5 +146,7 @@ public function recordOutboundRequestResponseHeaders($url, $status_code, $durati

public function recordOutboundRequestResponseBody($url, $status_code, $duration): bool;

public function recordCustomEvent(string $name, array $meta = []): bool;

public function whitelistedVendors(): array;
}
5 changes: 5 additions & 0 deletions stubs/ExceptionsOnlyDataFilter.stub
Original file line number Diff line number Diff line change
Expand Up @@ -351,4 +351,9 @@ class LaritorDataFilter extends DefaultOverride
{
return parent::whitelistedVendors();
}

public function recordCustomEvent(string $name, array $meta = []): bool
{
return Laritor::hasException();
}
}
5 changes: 5 additions & 0 deletions stubs/FullObservabilityDataFilter.stub
Original file line number Diff line number Diff line change
Expand Up @@ -350,4 +350,9 @@ class LaritorDataFilter extends DefaultOverride
{
return parent::whitelistedVendors();
}

public function recordCustomEvent(string $name, array $meta = []): bool
{
return true;
}
}
59 changes: 22 additions & 37 deletions stubs/IssuesOnlyDataFilter.stub
Original file line number Diff line number Diff line change
Expand Up @@ -36,11 +36,7 @@ class LaritorDataFilter extends DefaultOverride
$laritor->getCommandDuration() >= 300000;
}

/**
* @param string $cacheKey
* @return bool
*/
public function recordCacheHit($cacheKey): bool
public function hasIssue(): bool
{
return
$this->hasFailedRequest() ||
Expand All @@ -49,6 +45,15 @@ class LaritorDataFilter extends DefaultOverride
Laritor::hasException();
}

/**
* @param string $cacheKey
* @return bool
*/
public function recordCacheHit($cacheKey): bool
{
return $this->hasIssue();
}

/**
* @param \Throwable $exception
* @return bool
Expand All @@ -67,10 +72,7 @@ class LaritorDataFilter extends DefaultOverride
public function recordOutboundRequest($url, $status_code, $duration): bool
{
return
$this->hasFailedRequest() ||
$this->hasFailedJob() ||
$this->hasFailedCommand() ||
Laritor::hasException() ||
$this->hasIssue() ||
$status_code >= 300 ||
$duration >= 1000;
}
Expand All @@ -84,10 +86,7 @@ class LaritorDataFilter extends DefaultOverride
public function recordQuery($query, $duration, $path): bool
{
return
$this->hasFailedRequest() ||
$this->hasFailedJob() ||
$this->hasFailedCommand() ||
Laritor::hasException() ||
$this->hasIssue() ||
$duration >= 200;
}

Expand All @@ -102,9 +101,7 @@ class LaritorDataFilter extends DefaultOverride
public function recordQueuedJob(string $connection, string $queue, string $job, string $status, $duration): bool
{
return
$this->hasFailedRequest() ||
$this->hasFailedCommand() ||
Laritor::hasException() ||
$this->hasIssue() ||
strtolower($status) === 'failed' ||
$duration >= 60000;
}
Expand Down Expand Up @@ -152,11 +149,7 @@ class LaritorDataFilter extends DefaultOverride
*/
public function recordMail($mailable, $to, $subject): bool
{
return
$this->hasFailedRequest() ||
$this->hasFailedJob() ||
$this->hasFailedCommand() ||
Laritor::hasException();
return $this->hasIssue();
}

/**
Expand All @@ -166,11 +159,7 @@ class LaritorDataFilter extends DefaultOverride
*/
public function recordNotification($notifiable, $notification): bool
{
return
$this->hasFailedRequest() ||
$this->hasFailedJob() ||
$this->hasFailedCommand() ||
Laritor::hasException();
return $this->hasIssue();
}

/**
Expand All @@ -180,11 +169,7 @@ class LaritorDataFilter extends DefaultOverride
*/
public function recordFeatureFlag($flag, $scope): bool
{
return
$this->hasFailedRequest() ||
$this->hasFailedJob() ||
$this->hasFailedCommand() ||
Laritor::hasException();
return $this->hasIssue();
}

/**
Expand All @@ -195,12 +180,7 @@ class LaritorDataFilter extends DefaultOverride
*/
public function recordLog($level, $message, array $context = []): bool
{
return
$this->hasFailedRequest() ||
$this->hasFailedJob() ||
$this->hasFailedCommand() ||
Laritor::hasException() ||
!in_array(strtoupper($level), ['INFO','DEBUG']);
return $this->hasIssue() || !in_array(strtoupper($level), ['INFO','DEBUG']);
}

/**
Expand Down Expand Up @@ -418,4 +398,9 @@ class LaritorDataFilter extends DefaultOverride
{
return parent::whitelistedVendors();
}

public function recordCustomEvent(string $name, array $meta = []): bool
{
return $this->hasIssue();
}
}
Loading