// Portage UE 5.5 - lot L3 (journalisation). Voir Docs/Migration/04_Cahier_Des_Charges.md. // // Sous-systeme d'instance de jeu : cree et detruit avec GI, sans aucune modification de // Blueprint. Il n'altere aucun message existant (les comparaisons A/B avec la build 4.27 // reposent sur ces messages) ; il AJOUTE : // - au demarrage, un resume : versions, modules de donnees presents, fichiers par type ; // - en fin de session, un bilan : volume de journal par categorie et verbosite, et les // signatures d'avertissements/erreurs les plus frequentes, dedoublonnees. #pragma once #include "CoreMinimal.h" #include "Subsystems/GameInstanceSubsystem.h" #include "LPSessionLogSubsystem.generated.h" class FLPLogCounter; UCLASS() class LIFEPLAY_API ULPSessionLogSubsystem : public UGameInstanceSubsystem { GENERATED_BODY() public: virtual void Initialize(FSubsystemCollectionBase& Collection) override; virtual void Deinitialize() override; /** Ecrit le bilan courant sans attendre la fin de session (console : LifePlay.LogSummary). */ UFUNCTION(BlueprintCallable, Category = "LifePlay|Log") void LogSessionSummary() const; private: void LogStartupSummary() const; TSharedPtr Counter; double StartTime = 0.0; };