UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
AnalyticsET.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
6#include "Containers/Array.h"
8#include "CoreMinimal.h"
9#include "HAL/Platform.h"
10#include "HAL/PlatformCrt.h"
15
17class IAnalyticsProviderET;
18
23{
24 //--------------------------------------------------------------------------
25 // Module functionality
26 //--------------------------------------------------------------------------
27public:
34 static inline FAnalyticsET& Get()
35 {
36 return FModuleManager::LoadModuleChecked< FAnalyticsET >( "AnalyticsET" );
37 }
38
39 //--------------------------------------------------------------------------
40 // Configuration functionality
41 //--------------------------------------------------------------------------
42public:
48 struct Config
49 {
51 FString APIKeyET;
53 FString APIServerET;
65 FString AppVersionET;
67 bool UseLegacyProtocol = false;
73 FString UploadType;
77 float FlushIntervalSec = -1.f;
82
84 Config() = default;
98
100 static FString GetKeyNameForAPIKey() { return TEXT("APIKeyET"); }
102 static FString GetKeyNameForAPIServer() { return TEXT("APIServerET"); }
104 static FString GetKeyNameForAPIEndpoint() { return TEXT("APIEndpointET"); }
106 static FString GetKeyNameForAPIUnixSocketPath() { return TEXT("APIUnixSocketPathET"); }
108 static FString GetKeyNameForAppVersion() { return TEXT("AppVersionET"); }
110 static FString GetKeyNameForUseLegacyProtocol() { return TEXT("UseLegacyProtocol"); }
112 static FString GetKeyNameForAppEnvironment() { return TEXT("AppEnvironment"); }
114 static FString GetKeyNameForUploadType() { return TEXT("UploadType"); }
116 static FString GetDefaultAppEnvironment() { return TEXT("datacollector-binary"); }
118 static FString GetDefaultUploadType() { return TEXT("eteventstream"); }
120 static FString GetDefaultAPIEndpoint() { return TEXT("datarouter/api/v1/public/data"); }
121 };
122
123 //--------------------------------------------------------------------------
124 // provider factory functions
125 //--------------------------------------------------------------------------
126public:
133
139
140
145
146private:
147 ANALYTICSET_API virtual void StartupModule() override;
148 ANALYTICSET_API virtual void ShutdownModule() override;
149};
#define TEXT(x)
Definition Platform.h:1272
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition AnalyticsET.h:23
virtual ANALYTICSET_API TSharedPtr< IAnalyticsProviderET > CreateAnalyticsProviderET(const FAnalyticsProviderConfigurationDelegate &GetConfigValue) const
Definition AnalyticsET.cpp:33
static FAnalyticsET & Get()
Definition AnalyticsET.h:34
virtual ANALYTICSET_API TSharedPtr< IAnalyticsProvider > CreateAnalyticsProvider(const FAnalyticsProviderConfigurationDelegate &GetConfigValue) const override
Definition AnalyticsET.cpp:28
Definition IAnalyticsProviderModule.h:13
Definition IAnalyticsProvider.h:52
Definition Array.h:670
Definition SharedPointer.h:692
Definition AnalyticsET.h:49
static FString GetDefaultAPIEndpoint()
Definition AnalyticsET.h:120
FString APIEndpointET
Definition AnalyticsET.h:55
int32 MaximumPayloadSize
Definition AnalyticsET.h:79
static FString GetKeyNameForAPIServer()
Definition AnalyticsET.h:102
static FString GetKeyNameForUseLegacyProtocol()
Definition AnalyticsET.h:110
TArray< FString > AltAPIServersET
Definition AnalyticsET.h:59
FString APIServerET
Definition AnalyticsET.h:53
FString APIKeyET
Definition AnalyticsET.h:51
static FString GetDefaultAppEnvironment()
Definition AnalyticsET.h:116
int32 PreallocatedPayloadSize
Definition AnalyticsET.h:81
FString AppEnvironment
Definition AnalyticsET.h:71
bool bDropEventsOnFlushFailure
Definition AnalyticsET.h:69
float FlushIntervalSec
Definition AnalyticsET.h:77
FString UploadType
Definition AnalyticsET.h:73
static FString GetKeyNameForAppEnvironment()
Definition AnalyticsET.h:112
FString APIUnixSocketPathET
Definition AnalyticsET.h:57
static FString GetKeyNameForAppVersion()
Definition AnalyticsET.h:108
FString AppVersionET
Definition AnalyticsET.h:65
static FString GetKeyNameForAPIKey()
Definition AnalyticsET.h:100
static FString GetKeyNameForAPIEndpoint()
Definition AnalyticsET.h:104
Config(FString InAPIKeyET, FString InAPIServerET, FString InAppVersionET=FString(), bool InUseLegacyProtocol=false, FString InAppEnvironment=FString(), FString InUploadType=FString(), TArray< FString > InAltApiServers=TArray< FString >(), float InFlushIntervalSec=-1.f, int32 InMaximumPayloadSize=-1, int32 InPreallocatedPayloadSize=-1)
Definition AnalyticsET.h:86
static FString GetKeyNameForAPIUnixSocketPath()
Definition AnalyticsET.h:106
bool UseLegacyProtocol
Definition AnalyticsET.h:67
static FString GetKeyNameForUploadType()
Definition AnalyticsET.h:114
static FString GetDefaultUploadType()
Definition AnalyticsET.h:118
uint32 RetryLimitCount
Definition AnalyticsET.h:75