fix: logdrains validation
This commit is contained in:
@@ -52,7 +52,7 @@ class LogDrains extends Component
|
|||||||
public function syncData(bool $toModel = false)
|
public function syncData(bool $toModel = false)
|
||||||
{
|
{
|
||||||
if ($toModel) {
|
if ($toModel) {
|
||||||
$this->validate();
|
$this->customValidation();
|
||||||
$this->server->settings->is_logdrain_newrelic_enabled = $this->isLogDrainNewRelicEnabled;
|
$this->server->settings->is_logdrain_newrelic_enabled = $this->isLogDrainNewRelicEnabled;
|
||||||
$this->server->settings->is_logdrain_axiom_enabled = $this->isLogDrainAxiomEnabled;
|
$this->server->settings->is_logdrain_axiom_enabled = $this->isLogDrainAxiomEnabled;
|
||||||
$this->server->settings->is_logdrain_custom_enabled = $this->isLogDrainCustomEnabled;
|
$this->server->settings->is_logdrain_custom_enabled = $this->isLogDrainCustomEnabled;
|
||||||
@@ -79,6 +79,44 @@ class LogDrains extends Component
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function customValidation()
|
||||||
|
{
|
||||||
|
if ($this->isLogDrainNewRelicEnabled) {
|
||||||
|
try {
|
||||||
|
$this->validate([
|
||||||
|
'logDrainNewRelicLicenseKey' => ['required'],
|
||||||
|
'logDrainNewRelicBaseUri' => ['required', 'url'],
|
||||||
|
]);
|
||||||
|
} catch (\Throwable $e) {
|
||||||
|
$this->isLogDrainNewRelicEnabled = false;
|
||||||
|
|
||||||
|
throw $e;
|
||||||
|
}
|
||||||
|
} elseif ($this->isLogDrainAxiomEnabled) {
|
||||||
|
try {
|
||||||
|
$this->validate([
|
||||||
|
'logDrainAxiomDatasetName' => ['required'],
|
||||||
|
'logDrainAxiomApiKey' => ['required'],
|
||||||
|
]);
|
||||||
|
} catch (\Throwable $e) {
|
||||||
|
$this->isLogDrainAxiomEnabled = false;
|
||||||
|
|
||||||
|
throw $e;
|
||||||
|
}
|
||||||
|
} elseif ($this->isLogDrainCustomEnabled) {
|
||||||
|
try {
|
||||||
|
$this->validate([
|
||||||
|
'logDrainCustomConfig' => ['required'],
|
||||||
|
'logDrainCustomConfigParser' => ['string', 'nullable'],
|
||||||
|
]);
|
||||||
|
} catch (\Throwable $e) {
|
||||||
|
$this->isLogDrainCustomEnabled = false;
|
||||||
|
|
||||||
|
throw $e;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public function instantSave()
|
public function instantSave()
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
|
|||||||
Reference in New Issue
Block a user