Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
projectdiscovery
GitHub Repository: projectdiscovery/nuclei
Path: blob/dev/pkg/reporting/options.go
2070 views
1
package reporting
2
3
import (
4
"github.com/projectdiscovery/nuclei/v3/pkg/output"
5
"github.com/projectdiscovery/nuclei/v3/pkg/reporting/exporters/es"
6
"github.com/projectdiscovery/nuclei/v3/pkg/reporting/exporters/jsonexporter"
7
"github.com/projectdiscovery/nuclei/v3/pkg/reporting/exporters/jsonl"
8
"github.com/projectdiscovery/nuclei/v3/pkg/reporting/exporters/markdown"
9
"github.com/projectdiscovery/nuclei/v3/pkg/reporting/exporters/mongo"
10
"github.com/projectdiscovery/nuclei/v3/pkg/reporting/exporters/sarif"
11
"github.com/projectdiscovery/nuclei/v3/pkg/reporting/exporters/splunk"
12
"github.com/projectdiscovery/nuclei/v3/pkg/reporting/trackers/filters"
13
"github.com/projectdiscovery/nuclei/v3/pkg/reporting/trackers/gitea"
14
"github.com/projectdiscovery/nuclei/v3/pkg/reporting/trackers/github"
15
"github.com/projectdiscovery/nuclei/v3/pkg/reporting/trackers/gitlab"
16
"github.com/projectdiscovery/nuclei/v3/pkg/reporting/trackers/jira"
17
"github.com/projectdiscovery/nuclei/v3/pkg/reporting/trackers/linear"
18
"github.com/projectdiscovery/retryablehttp-go"
19
)
20
21
// Options is a configuration file for nuclei reporting module
22
type Options struct {
23
// AllowList contains a list of allowed events for reporting module
24
AllowList *filters.Filter `yaml:"allow-list"`
25
// DenyList contains a list of denied events for reporting module
26
DenyList *filters.Filter `yaml:"deny-list"`
27
// ValidatorCallback is a callback function that is called to validate an event before it is reported
28
ValidatorCallback func(event *output.ResultEvent) bool `yaml:"-"`
29
// GitHub contains configuration options for GitHub Issue Tracker
30
GitHub *github.Options `yaml:"github"`
31
// GitLab contains configuration options for GitLab Issue Tracker
32
GitLab *gitlab.Options `yaml:"gitlab"`
33
// Gitea contains configuration options for Gitea Issue Tracker
34
Gitea *gitea.Options `yaml:"gitea"`
35
// Jira contains configuration options for Jira Issue Tracker
36
Jira *jira.Options `yaml:"jira"`
37
// Linear contains configuration options for Linear Issue Tracker
38
Linear *linear.Options `yaml:"linear"`
39
// MarkdownExporter contains configuration options for Markdown Exporter Module
40
MarkdownExporter *markdown.Options `yaml:"markdown"`
41
// SarifExporter contains configuration options for Sarif Exporter Module
42
SarifExporter *sarif.Options `yaml:"sarif"`
43
// ElasticsearchExporter contains configuration options for Elasticsearch Exporter Module
44
ElasticsearchExporter *es.Options `yaml:"elasticsearch"`
45
// SplunkExporter contains configuration options for splunkhec Exporter Module
46
SplunkExporter *splunk.Options `yaml:"splunkhec"`
47
// JSONExporter contains configuration options for JSON Exporter Module
48
JSONExporter *jsonexporter.Options `yaml:"json"`
49
// JSONLExporter contains configuration options for JSONL Exporter Module
50
JSONLExporter *jsonl.Options `yaml:"jsonl"`
51
// MongoDBExporter containers the configuration options for the MongoDB Exporter Module
52
MongoDBExporter *mongo.Options `yaml:"mongodb"`
53
54
HttpClient *retryablehttp.Client `yaml:"-"`
55
OmitRaw bool `yaml:"-"`
56
57
ExecutionId string `yaml:"-"`
58
}
59
60