1// Copyright (c) 2016, 2018, 2019, Oracle and/or its affiliates. All rights reserved.
2// Code generated. DO NOT EDIT.
3
4// Audit API
5//
6// API for the Audit Service. Use this API for compliance monitoring in your tenancy.
7// For more information, see Overview of Audit (https://docs.cloud.oracle.com/iaas/Content/Audit/Concepts/auditoverview.htm).
8// **Tip**: This API is good for queries, but not bulk-export operations.
9//
10
11package audit
12
13import (
14	"github.com/oracle/oci-go-sdk/common"
15)
16
17// AuditEvent All the attributes of an audit event. For more information, see Viewing Audit Log Events (https://docs.cloud.oracle.com/iaas/Content/Audit/Tasks/viewinglogevents.htm).
18type AuditEvent struct {
19
20	// The type of event that happened.
21	// The service that produces the event can also add, remove, or change the meaning of a field.
22	// A service implementing these type changes would publish a new version of an `eventType` and
23	// revise the `eventTypeVersion` field.
24	// Example: `com.oraclecloud.ComputeApi.GetInstance`
25	EventType *string `mandatory:"false" json:"eventType"`
26
27	// The version of the CloudEvents specification. The structure of the envelope follows the
28	// CloudEvents (https://github.com/cloudevents/spec) industry standard format hosted by the
29	// Cloud Native Computing Foundation ( CNCF) (https://www.cncf.io/).
30	// Audit uses version 0.1 specification of the CloudEvents event envelope.
31	// Example: `0.1`
32	CloudEventsVersion *string `mandatory:"false" json:"cloudEventsVersion"`
33
34	// The version of the event type. This version applies to the payload of the event, not the envelope.
35	// Use `cloudEventsVersion` to determine the version of the envelope.
36	// Example: `2.0`
37	EventTypeVersion *string `mandatory:"false" json:"eventTypeVersion"`
38
39	// The source of the event.
40	// Example: `ComputeApi`
41	Source *string `mandatory:"false" json:"source"`
42
43	// The GUID of the event.
44	EventId *string `mandatory:"false" json:"eventId"`
45
46	// The time the event occurred, expressed in RFC 3339 (https://tools.ietf.org/html/rfc3339) timestamp format.
47	// Example: `2019-09-18T00:10:59.252Z`
48	EventTime *common.SDKTime `mandatory:"false" json:"eventTime"`
49
50	// The content type of the data contained in `data`.
51	// Example: `application/json`
52	ContentType *string `mandatory:"false" json:"contentType"`
53
54	Data *Data `mandatory:"false" json:"data"`
55}
56
57func (m AuditEvent) String() string {
58	return common.PointerString(m)
59}
60