Open 3D Engine AzCore API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AZ::Metrics::IEventLogger Class Referenceabstract

IEventLogger API which supports recording event. More...

#include <IEventLogger.h>

Inherited by AZ::Metrics::JsonTraceEventLogger.

Public Types

using ErrorString = AZStd::fixed_string< 256 >
 Outcome which is populated with an error message should the event recording fail.
 
using ResultOutcome = AZ::Outcome< void, ErrorString >
 

Public Member Functions

 AZ_RTTI (IEventLogger, "{D39D09FA-DEA0-4874-BC45-4B310C3DD52E}")
 
virtual void SetName (AZStd::string_view name)
 
virtual AZStd::string_view GetName () const
 
virtual void Flush ()=0
 
virtual ResultOutcome RecordDurationEventBegin (const DurationArgs &)=0
 
virtual ResultOutcome RecordDurationEventEnd (const DurationArgs &)=0
 
virtual ResultOutcome RecordCompleteEvent (const CompleteArgs &)=0
 
virtual ResultOutcome RecordInstantEvent (const InstantArgs &)=0
 
virtual ResultOutcome RecordCounterEvent (const CounterArgs &)=0
 
virtual ResultOutcome RecordAsyncEventStart (const AsyncArgs &)=0
 
virtual ResultOutcome RecordAsyncEventInstant (const AsyncArgs &)=0
 
virtual ResultOutcome RecordAsyncEventEnd (const AsyncArgs &)=0
 

Detailed Description

IEventLogger API which supports recording event.

Member Function Documentation

◆ Flush()

virtual void AZ::Metrics::IEventLogger::Flush ( )
pure virtual

Provides a hook for implemented Event Loggers to flush recorded metrics to an associated stream(disk stream, network stream, etc...)

Implemented in AZ::Metrics::JsonTraceEventLogger.

◆ GetName()

virtual AZStd::string_view AZ::Metrics::IEventLogger::GetName ( ) const
inlinevirtual

Returns the qualified name for the Event Logger This can be used to query settings from event loggers with the name through queury the "/O3DE/Metrics/<Name>" object

Reimplemented in AZ::Metrics::JsonTraceEventLogger.

◆ RecordAsyncEventEnd()

virtual ResultOutcome AZ::Metrics::IEventLogger::RecordAsyncEventEnd ( const AsyncArgs )
pure virtual

Records an end async event Uses the event header to populate the event fields

Implemented in AZ::Metrics::JsonTraceEventLogger.

◆ RecordAsyncEventInstant()

virtual ResultOutcome AZ::Metrics::IEventLogger::RecordAsyncEventInstant ( const AsyncArgs )
pure virtual

Records an instant async event Uses the event header to populate the event fields

Implemented in AZ::Metrics::JsonTraceEventLogger.

◆ RecordAsyncEventStart()

virtual ResultOutcome AZ::Metrics::IEventLogger::RecordAsyncEventStart ( const AsyncArgs )
pure virtual

Records a start async event Uses the event header to populate the event fields

Implemented in AZ::Metrics::JsonTraceEventLogger.

◆ RecordCompleteEvent()

virtual ResultOutcome AZ::Metrics::IEventLogger::RecordCompleteEvent ( const CompleteArgs )
pure virtual

Records a complete event(encapsulates a beging and end duration event) Uses the event header to populate the event fields

Implemented in AZ::Metrics::JsonTraceEventLogger.

◆ RecordCounterEvent()

virtual ResultOutcome AZ::Metrics::IEventLogger::RecordCounterEvent ( const CounterArgs )
pure virtual

Records a Counter Uses the event header to populate the event fields

Implemented in AZ::Metrics::JsonTraceEventLogger.

◆ RecordDurationEventBegin()

virtual ResultOutcome AZ::Metrics::IEventLogger::RecordDurationEventBegin ( const DurationArgs )
pure virtual

Records a begin duration event Uses the event header to populate the event fields

Implemented in AZ::Metrics::JsonTraceEventLogger.

◆ RecordDurationEventEnd()

virtual ResultOutcome AZ::Metrics::IEventLogger::RecordDurationEventEnd ( const DurationArgs )
pure virtual

Records an end duration event Uses the event header to populate the event fields

Implemented in AZ::Metrics::JsonTraceEventLogger.

◆ RecordInstantEvent()

virtual ResultOutcome AZ::Metrics::IEventLogger::RecordInstantEvent ( const InstantArgs )
pure virtual

Records an instant event Uses the event header to populate the event fields

Implemented in AZ::Metrics::JsonTraceEventLogger.

◆ SetName()

virtual void AZ::Metrics::IEventLogger::SetName ( AZStd::string_view  name)
inlinevirtual

Provides a qualified name for the Event Logger This is used to as part of the for the "/O3DE/Metrics/<Name>" to contain settings associated with any event logger with the name

Reimplemented in AZ::Metrics::JsonTraceEventLogger.


The documentation for this class was generated from the following file: