Integrations
There are some categories of integrations to help integrate for any platform or business logic:
-
Platform
Platforms allow malwatch to cohesively conform to your setup according to any requirements by overriding config values and almost any aspect of the functional environment. -
Acter
Acters are the result of anyverb
definitions which enact the fate of malware detections. The actersalert
,clean
,quarantine
andexile
are bundled by default. -
Alerter
Alerters are transports associated with alert delivery. More than one can be active. Support forjson
,pagerduty
andsmtp
are included by default.
Alerter | Description |
---|---|
json |
Deliver payloads to your own backend. |
pagerduty |
Deliver alerts through PagerDuty. |
smtp |
Deliver alerts using authenticated SMTP (sendmail is not available). |
Integrations are loaded by means of the Plat
, Acter
and Alerter
interfaces:
pkg/plat/plat.go
type Plat interface {
Load() error
Cfg() Cfg
Acters() []acter.Acter
}
pkg/plat/acter/acter.go
type Acter interface {
Load() error
Verb() string
Act(*state.Result) error
}
pkg/plat/alert/alert.go
type Sender interface {
Load() error
Cfg() plat.Cfg
Alert(*state.Result) error
}
Integrations
If your integration
or alerter
requires a config file, then the Cfg
interface can be used:
pkg/plat/plat.go
type Cfg interface {
Load() error
Path() string
}
Need Help?
Please contact us for help with integrating malwatch
with your platform, we would love to help.