pub struct AuditLogEntry {Show 17 fields
pub base: BaseLogEntry,
pub version: String,
pub deployment_id: Option<String>,
pub event: String,
pub entry_type: Option<String>,
pub api: ApiDetails,
pub remote_host: Option<String>,
pub user_agent: Option<String>,
pub req_path: Option<String>,
pub req_host: Option<String>,
pub req_claims: Option<HashMap<String, Value>>,
pub req_query: Option<HashMap<String, String>>,
pub req_header: Option<HashMap<String, String>>,
pub resp_header: Option<HashMap<String, String>>,
pub access_key: Option<String>,
pub parent_user: Option<String>,
pub error: Option<String>,
}
Expand description
Entry - audit entry logs AuditLogEntry is used to define the structure of an audit log entry
The AuditLogEntry
structure contains the following fields:
base
- the base log entryversion
- the version of the audit log entrydeployment_id
- the deployment IDevent
- the evententry_type
- the type of audit messageapi
- the API detailsremote_host
- the remote hostuser_agent
- the user agentreq_path
- the request pathreq_host
- the request hostreq_claims
- the request claimsreq_query
- the request queryreq_header
- the request headerresp_header
- the response headeraccess_key
- the access keyparent_user
- the parent usererror
- the error
The AuditLogEntry
structure contains the following methods:
new
- create a newAuditEntry
with default valuesnew_with_values
- create a newAuditEntry
with version, time, event and api detailswith_base
- set the base log entryset_version
- set the versionset_deployment_id
- set the deployment IDset_event
- set the eventset_entry_type
- set the entry typeset_api
- set the API detailsset_remote_host
- set the remote hostset_user_agent
- set the user agentset_req_path
- set the request pathset_req_host
- set the request hostset_req_claims
- set the request claimsset_req_query
- set the request queryset_req_header
- set the request headerset_resp_header
- set the response headerset_access_key
- set the access keyset_parent_user
- set the parent userset_error
- set the error
§Example
use rustfs_obs::AuditLogEntry;
use rustfs_obs::ApiDetails;
use std::collections::HashMap;
let entry = AuditLogEntry::new()
.set_version("1.0".to_string())
.set_deployment_id(Some("123".to_string()))
.set_event("event".to_string())
.set_entry_type(Some("type".to_string()))
.set_api(ApiDetails::new())
.set_remote_host(Some("remote-host".to_string()))
.set_user_agent(Some("user-agent".to_string()))
.set_req_path(Some("req-path".to_string()))
.set_req_host(Some("req-host".to_string()))
.set_req_claims(Some(HashMap::new()))
.set_req_query(Some(HashMap::new()))
.set_req_header(Some(HashMap::new()))
.set_resp_header(Some(HashMap::new()))
.set_access_key(Some("access-key".to_string()))
.set_parent_user(Some("parent-user".to_string()))
.set_error(Some("error".to_string()));
Fields§
§base: BaseLogEntry
§version: String
§deployment_id: Option<String>
§event: String
§entry_type: Option<String>
§api: ApiDetails
§remote_host: Option<String>
§user_agent: Option<String>
§req_path: Option<String>
§req_host: Option<String>
§req_claims: Option<HashMap<String, Value>>
§req_query: Option<HashMap<String, String>>
§req_header: Option<HashMap<String, String>>
§resp_header: Option<HashMap<String, String>>
§access_key: Option<String>
§parent_user: Option<String>
§error: Option<String>
Implementations§
Source§impl AuditLogEntry
impl AuditLogEntry
Sourcepub fn new_with_values(
version: String,
time: DateTime<Utc>,
event: String,
api: ApiDetails,
) -> Self
pub fn new_with_values( version: String, time: DateTime<Utc>, event: String, api: ApiDetails, ) -> Self
Create a new AuditEntry
with version, time, event and api details
Sourcepub fn with_base(self, base: BaseLogEntry) -> Self
pub fn with_base(self, base: BaseLogEntry) -> Self
Set the base log entry
Sourcepub fn set_version(self, version: String) -> Self
pub fn set_version(self, version: String) -> Self
Set the version
Sourcepub fn set_deployment_id(self, deployment_id: Option<String>) -> Self
pub fn set_deployment_id(self, deployment_id: Option<String>) -> Self
Set the deployment ID
Sourcepub fn set_entry_type(self, entry_type: Option<String>) -> Self
pub fn set_entry_type(self, entry_type: Option<String>) -> Self
Set the entry type
Sourcepub fn set_api(self, api: ApiDetails) -> Self
pub fn set_api(self, api: ApiDetails) -> Self
Set the API details
Sourcepub fn set_remote_host(self, remote_host: Option<String>) -> Self
pub fn set_remote_host(self, remote_host: Option<String>) -> Self
Set the remote host
Sourcepub fn set_user_agent(self, user_agent: Option<String>) -> Self
pub fn set_user_agent(self, user_agent: Option<String>) -> Self
Set the user agent
Sourcepub fn set_req_path(self, req_path: Option<String>) -> Self
pub fn set_req_path(self, req_path: Option<String>) -> Self
Set the request path
Sourcepub fn set_req_host(self, req_host: Option<String>) -> Self
pub fn set_req_host(self, req_host: Option<String>) -> Self
Set the request host
Sourcepub fn set_req_claims(self, req_claims: Option<HashMap<String, Value>>) -> Self
pub fn set_req_claims(self, req_claims: Option<HashMap<String, Value>>) -> Self
Set the request claims
Sourcepub fn set_req_query(self, req_query: Option<HashMap<String, String>>) -> Self
pub fn set_req_query(self, req_query: Option<HashMap<String, String>>) -> Self
Set the request query
Sourcepub fn set_req_header(self, req_header: Option<HashMap<String, String>>) -> Self
pub fn set_req_header(self, req_header: Option<HashMap<String, String>>) -> Self
Set the request header
Sourcepub fn set_resp_header(
self,
resp_header: Option<HashMap<String, String>>,
) -> Self
pub fn set_resp_header( self, resp_header: Option<HashMap<String, String>>, ) -> Self
Set the response header
Sourcepub fn set_access_key(self, access_key: Option<String>) -> Self
pub fn set_access_key(self, access_key: Option<String>) -> Self
Set the access key
Sourcepub fn set_parent_user(self, parent_user: Option<String>) -> Self
pub fn set_parent_user(self, parent_user: Option<String>) -> Self
Set the parent user
Trait Implementations§
Source§impl Clone for AuditLogEntry
impl Clone for AuditLogEntry
Source§fn clone(&self) -> AuditLogEntry
fn clone(&self) -> AuditLogEntry
Returns a duplicate of the value. Read more
1.0.0 · Source§const fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for AuditLogEntry
impl Debug for AuditLogEntry
Source§impl Default for AuditLogEntry
impl Default for AuditLogEntry
Source§fn default() -> AuditLogEntry
fn default() -> AuditLogEntry
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for AuditLogEntry
impl<'de> Deserialize<'de> for AuditLogEntry
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl LogRecord for AuditLogEntry
impl LogRecord for AuditLogEntry
Auto Trait Implementations§
impl Freeze for AuditLogEntry
impl RefUnwindSafe for AuditLogEntry
impl Send for AuditLogEntry
impl Sync for AuditLogEntry
impl Unpin for AuditLogEntry
impl UnwindSafe for AuditLogEntry
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request