Event Logging
Overview
PPA can be configured to send logs to an external syslog server.
The following syslog procotols are supported:
- TLS (recommended)
- TCP
- UDP
Configuring Syslog
To configure syslog you will need to:
- Enable the feature using the checkbox
- Provide the logging server's IP or DNS address & port
- Select the syslog protocol to use
- Provide a certificate to use (optional)
Once the form validates & saves you will be able to enable/disable the feature as you wish.
Supported Events
The following events are emitted by PPA:
Event name | Description |
---|---|
TaskStart | Task has started |
TaskCancel | Task has been cancelled |
TaskWaitHook | Task wait hook has received user input |
TaskLog | Task has sent a custom syslog message |
DelayedStartInsert | Delayed Start Task has been created |
DelayedStartUpdate | Delayed Start Task has been updated |
DelayedStartDelete | Delayed Start Task has been deleted |
SecretAuthorized | Secret access has been authorized (by a running task) |
VaultAuthorized | Vault access has been authorized (by a running task) |
ImageBuild | Task image has built (Task Builder) |
ImageDeploy | Task image has been deployed (Task Builder) |
ImageUpdateMetadata | Task image metadata has been edited |
ImageUpdateOwner | Task image owner has been edited |
ImageUpdateDelegates | Task image delegated groups have been edited |
ImageUpdateMaintainers | Task image maintainer groups have been edited |
ImageArchive | Task image has been deleted |
ImageRevisionsDelete | Task image revisions have been deleted |
ImageUpload | Task image has been uploaded |
ImageRebuild | Task image has been rebuilt |
PlaybookInsert | Playbook has been created |
PlaybookUpdate | Playbook has been edited |
PlaybookUpdateMaintainers | Playbook maintainer groups have been edited |
PlaybookDelete | Playbook has been deleted |
AgentInsert | Agent has been created |
AgentUpdate | Agent has been edited |
AgentDelete | Agent has been deleted |
RoleInsert | Role has been created |
RoleUpdate | Role has been edited |
RoleDelete | Role has been deleted |
VaultInsert | Vault has been created |
VaultUpdate | Vault has been edited |
VaultDelete | Vault has been deleted |
ScheduleInsert | Schedule has been created |
ScheduleUpdate | Schedule has been edited |
ScheduleDelete | Schedule has been deleted |
ConfigInsert | Configuration has been created |
ConfigUpdate | Configuration has been edited |
UserAuth | User has signed in |
UserSetActive | User has been activated/deactivated |
UserSetAuthType | User authentication type has been changed |
UserDelete | User has been deleted |
UserRestore | User has been restored |
UsersImported | Users have been imported |
GroupsImported | Groups have been imported |
GroupsUpdate | Groups have been updated |
GroupDelete | Group has been removed |
APIKeyRegenerate | Key has been regenerated |
Techout | Techout has been generated |
SystemEventInsert | System Event log has been created |
SystemEventUpdate | System Event log has been updated |
SystemEventDismiss | System Event warning has been dismissed |
SystemEventsDismiss | Multiple System Event warnings have been dismissed |
SystemEventsDelete | Multiple System Event warnings have been deleted |
SubscriptionInsert | System Event subscription has been created |
SubscriptionUpdate | System Event subscription has been updated |
SubscriptionDelete | System Event subscription has been deleted |
TaskLogsCleanup | Scheduled tasks logs cleanup has finished |
Message fields
PPA provides the following additional fields:
Field name | Description |
---|---|
user | User responsible for triggering the event |
image | Task image name (if relevant) |
task | Task uuid (if relevant) |
details | Additional contextual information |
The details field contains different information depending on the type of event. Here are some examples:
UserAuth
{
"context": {
"addr": "123.456.789.10",
"auth_type": "password"
}
}
TaskCancel
{
"context": {
"trigger": "ui"
},
"type": "task",
"owner": "ppa.demo.user"
}
VaultInsert
{
"inserted": {
"driver": "hashicorp-vault",
"host": "ppa.demo.vault:8200",
"name": "PPA demo vault"
},
"type": "vault"
}
ImageUpdateMetadata
{
"updated": {
"name": {
"current": "Current Name",
"previous": "Previous Name"
},
"tags": {
"added": ["demo", "qa", "v2.5.0"],
"removed": ["v2.4.0"]
}
},
"type": "image",
"owner": "ppa.demo.user"
}