Class ILogController

Inheritance Relationships

Derived Type

Class Documentation

class Microsoft::Applications::Events::ILogController

This class controls transmission and storage subsystems

Subclassed by Microsoft::Applications::Events::ILogManager

Public Functions

virtual void FlushAndTeardown() = 0

Flushes any pending telemetry events in memory to disk, and tears-down the telemetry logging system.

virtual status_t Flush() = 0

Flushes any pending telemetry events in memory to disk, to reduce possible data loss.

This method can be expensive, so you should use it sparingly. The operating system blocks the calling thread and might flush the global file buffers (all buffered file system data) to disk, which can be time consuming.

virtual status_t PauseTransmission() = 0

Pauses the transmission of events to the data collector.

While paused, events continue to be queued on the client, cached either in memory or on disk.

virtual status_t ResumeTransmission() = 0

Resumes the transmission of events to the data collector.

virtual status_t UploadNow() = 0

Attempts to send any pending telemetry events that are currently cached either in memory, or on disk.

virtual status_t SetTransmitProfile(TransmitProfile profile) = 0

Sets the transmit profile for event transmission - to one of the built-in profiles.

A transmit profile is a collection of hardware and system settings (like network connectivity, power state) based on which to determine how events are to be transmitted.

Parameters

profile – Transmit profile, as one of the ::TransmitProfile enumeration values.

Returns

This method doesn’t return a value - because it always succeeds.

virtual status_t SetTransmitProfile(const std::string &profile) = 0

Sets the transmit profile for event transmission.

A transmit profile is a collection of hardware and system settings (like network connectivity, power state, etc.).

Parameters

profile – A string that contains the transmit profile.

Returns

A boolean value that indicates success (true) or failure (false).

virtual status_t LoadTransmitProfiles(const std::string &profiles_json) = 0

Loads transmit profiles formatted in JSON.

Parameters

profiles_json – A string that contains the transmit profiles in JSON.

Returns

A boolean value that indicates success (true) or failure (false) if the configuration is invalid.

virtual status_t LoadTransmitProfiles(const std::vector<TransmitProfileRules> &profiles) noexcept = 0

Loads transmit profiles.

Parameters

profiles – A collection of transmit profiles

Returns

A boolean value that indicates success (true) or failure (false) if the configuration is invalid.

virtual status_t ResetTransmitProfiles() = 0

Resets transmission profiles to default settings.

virtual const std::string &GetTransmitProfileName() = 0

Gets the name of the current transmit profile.

virtual status_t DeleteData() = 0

Delete local data