Files
DedicatedServerCourse/Plugins/GameLiftServerSDK/Source/GameLiftMetrics/Public/GameLiftMetricsConfig.h

81 lines
2.4 KiB
C
Raw Normal View History

2026-02-24 22:39:26 -05:00
/*
* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
* its licensors.
*
* For complete copyright and license terms please see the LICENSE at the root of this
* distribution (the "License"). All use of this software is governed by the License,
* or, if provided, by the license below or the license accompanying this file. Do not
* remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
*
*/
#pragma once
#include "CoreMinimal.h"
#include "GameLiftMetricsConfig.generated.h"
/**
* GameLift Metrics module configuration.
*
* Can be configured in `DefaultGame.ini`:
* ```
* [/Script/GameLiftMetricsUnreal.GameLiftMetricsConfig]
* CollectorHost = "127.0.0.1"
* CollectorPort = 8125
* MaxPacketSize = 2048
* CaptureIntervalSeconds = 10
* bEnableMetrics = true
* ```
*/
UCLASS(config=Game, defaultconfig)
class GAMELIFTMETRICS_API UGameLiftMetricsConfig : public UObject
{
GENERATED_BODY()
public:
UGameLiftMetricsConfig() = default;
/**
* Returns the current configuration.
*/
static const UGameLiftMetricsConfig& Get();
/**
* Whether metrics collection is enabled.
* When disabled, no metrics will be collected or sent.
*/
UPROPERTY(Config, EditAnywhere, BlueprintReadOnly, Category="GameLift Metrics")
bool bEnableMetrics = true;
/**
* Host to send metrics to.
*/
UPROPERTY(Config, EditAnywhere, BlueprintReadOnly, Category="GameLift Metrics")
FString CollectorHost = TEXT("127.0.0.1");
/**
* UDP port number to send metrics to.
*/
UPROPERTY(Config, EditAnywhere, BlueprintReadOnly, Category="GameLift Metrics")
int32 CollectorPort = 8125;
/**
* Metrics capture interval before sending data to the collector.
*/
UPROPERTY(Config, EditAnywhere, BlueprintReadOnly, Category="GameLift Metrics")
float CaptureIntervalSeconds = 10.0f;
/**
* Maximum UDP packet size.
*
* Typical MTU for Internet packets is 1500 bytes.
* We set the default to 1472, leaving room for headers.
*
* For use with collector on same machine or with AWS jumbo packets this value can be bumped up past 1500 bytes.
*/
UPROPERTY(Config, EditAnywhere, BlueprintReadOnly, Category="GameLift Metrics")
int32 MaxPacketSize = 1472;
};