display crowdsec logs when nuclei tests fail

This commit is contained in:
Sebastien Blot 2023-12-05 16:23:08 +01:00
parent 63f230b24b
commit 9b79a37eff
No known key found for this signature in database
GPG key ID: DFC2902F40449F6A

View file

@ -605,13 +605,20 @@ func (t *HubTestItem) RunWithNucleiTemplate() error {
}
err = nucleiConfig.RunNucleiTemplate(t.Name, t.Config.NucleiTemplate, DefaultNucleiTarget)
crowdsecLogFile := fmt.Sprintf("%s/log/crowdsec.log", nucleiConfig.OutputDir)
if t.Config.ExpectedNucleiFailure {
if err != nil && errors.Is(err, NucleiTemplateFail) {
log.Infof("Appsec test %s failed as expected", t.Name)
t.Success = true
} else {
log.Errorf("Appsec test %s failed: %s", t.Name, err)
crowdsecLog, err := os.ReadFile(crowdsecLogFile)
if err != nil {
log.Errorf("unable to read crowdsec log file '%s': %s", crowdsecLogFile, err)
} else {
log.Errorf("crowdsec log file '%s'", crowdsecLogFile)
log.Errorf("%s", string(crowdsecLog))
}
}
} else {
if err == nil {
@ -619,6 +626,13 @@ func (t *HubTestItem) RunWithNucleiTemplate() error {
t.Success = true
} else {
log.Errorf("Appsec test %s failed: %s", t.Name, err)
crowdsecLog, err := os.ReadFile(crowdsecLogFile)
if err != nil {
log.Errorf("unable to read crowdsec log file '%s': %s", crowdsecLogFile, err)
} else {
log.Errorf("crowdsec log file '%s'", crowdsecLogFile)
log.Errorf("%s", string(crowdsecLog))
}
}
}
crowdsecDaemon.Process.Kill()