diff --git a/StudiApp/StudiApp/App.xaml.cs b/StudiApp/StudiApp/App.xaml.cs
index c73987dc35c587d0e91d34c285f94bd13171096c..aafec14750d8a2f5b1f9cb0192b2c3ec7c07d68d 100644
--- a/StudiApp/StudiApp/App.xaml.cs
+++ b/StudiApp/StudiApp/App.xaml.cs
@@ -1,4 +1,7 @@
-using StudiApp.Models;
+using MetroLog.Maui;
+using StudiApp.Views;
+
+using StudiApp.Models;
 using StudiApp.Repository;
 
 namespace StudiApp;
diff --git a/StudiApp/StudiApp/MauiProgram.cs b/StudiApp/StudiApp/MauiProgram.cs
index bdf5d3fb5a805021b23d1186b79e61c05339f45c..61677da797ef62592acf6d8868c77a836c2d9402 100644
--- a/StudiApp/StudiApp/MauiProgram.cs
+++ b/StudiApp/StudiApp/MauiProgram.cs
@@ -1,7 +1,7 @@
-using Microsoft.Extensions.Logging;
+using MetroLog.MicrosoftExtensions;
+using MetroLog.Operators;
 using StudiApp.Models;
 using StudiApp.Repository;
-using StudiApp.Services;
 using StudiApp.ViewModels;
 using StudiApp.Views;
 using Syncfusion.Maui.Core.Hosting;
@@ -24,18 +24,31 @@ public static class MauiProgram
             .RegisterAppServices()
             .RegisterViewModels()
             .RegisterViews()
-            .RegisterDatabase();
+            .RegisterDatabase()
+            .RegisterLogger();
 
-#if DEBUG
-		builder.Logging.AddDebug();
-#endif
 
-		return builder.Build();
+        return builder.Build();
 	}
 
+    private static void RegisterLogger(this MauiAppBuilder mauiAppBuilder)
+    {
+        mauiAppBuilder.Logging.AddTraceLogger(_ => { });
+
+        mauiAppBuilder.Logging.AddStreamingFileLogger(options =>
+        {
+            const string loggingFolder = "Logs";
+            var path = Path.Combine(FileSystem.AppDataDirectory, loggingFolder);
+
+            options.RetainDays = 60;
+            options.FolderPath = path;
+        });
+
+        mauiAppBuilder.Services.AddSingleton(LogOperatorRetriever.Instance);
+    }
+
     public static MauiAppBuilder RegisterAppServices(this MauiAppBuilder mauiAppBuilder)
     {
-        mauiAppBuilder.Services.AddSingleton<ILoggerService, LoggerService>();
         return mauiAppBuilder;
     }
 
diff --git a/StudiApp/StudiApp/Services/ILoggerService.cs b/StudiApp/StudiApp/Services/ILoggerService.cs
deleted file mode 100644
index f156c4d7e6b7056e52cb1862f572e899c1f44dfc..0000000000000000000000000000000000000000
--- a/StudiApp/StudiApp/Services/ILoggerService.cs
+++ /dev/null
@@ -1,12 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace StudiApp.Services
-{
-    internal interface ILoggerService
-    {
-    }
-}
diff --git a/StudiApp/StudiApp/Services/LoggerService.cs b/StudiApp/StudiApp/Services/LoggerService.cs
deleted file mode 100644
index 599a60e7eb95ed795ae829ac1b46728ce4357818..0000000000000000000000000000000000000000
--- a/StudiApp/StudiApp/Services/LoggerService.cs
+++ /dev/null
@@ -1,12 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace StudiApp.Services
-{
-    internal class LoggerService : ILoggerService
-    {
-    }
-}
diff --git a/StudiApp/StudiApp/StudiApp.csproj b/StudiApp/StudiApp/StudiApp.csproj
index 45c50ae5b4275292ca09a56de3cb060cfa629aef..3264928d5c46de7e93376ef8e536703814b3f27d 100644
--- a/StudiApp/StudiApp/StudiApp.csproj
+++ b/StudiApp/StudiApp/StudiApp.csproj
@@ -39,8 +39,16 @@
 		<!-- Raw Assets (also remove the "Resources\Raw" prefix) -->
 		<MauiAsset Include="Resources\Raw\**" LogicalName="%(RecursiveDir)%(Filename)%(Extension)" />
 	</ItemGroup>
+	<ItemGroup>
+	  <Compile Remove="Services\Logs\**" />
+	  <EmbeddedResource Remove="Services\Logs\**" />
+	  <MauiCss Remove="Services\Logs\**" />
+	  <MauiXaml Remove="Services\Logs\**" />
+	  <None Remove="Services\Logs\**" />
+	</ItemGroup>
 	<ItemGroup>
 		<PackageReference Include="CommunityToolkit.Mvvm" Version="8.1.0" />
+		<PackageReference Include="MetroLog.Maui" Version="2.1.0" />
 		<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="7.0.0" />
 		<PackageReference Include="Syncfusion.Maui.Scheduler" Version="21.1.37" />
 		<PackageReference Include="sqlite-net-pcl" Version="1.8.116" />
@@ -49,6 +57,7 @@
 		<PackageReference Include="SQLitePCLRaw.bundle_green" Version="2.1.4" />
 	</ItemGroup>
 	<ItemGroup>
+		<Folder Include="Services\" />
 		<Folder Include="Views\CoursesEditFragments" />
 		<Folder Include="Views\CoursesOverviewFragments" />
 		<Folder Include="Views\DashboardFragments" />
diff --git a/StudiApp/StudiApp/viewmodels/CoursesEditViewModel.cs b/StudiApp/StudiApp/viewmodels/CoursesEditViewModel.cs
index 9779c9090cbc7fea4d83447dfe116699621c61cf..ebbc5377c1399c41f5c3aafa6646cd695f89a13f 100644
--- a/StudiApp/StudiApp/viewmodels/CoursesEditViewModel.cs
+++ b/StudiApp/StudiApp/viewmodels/CoursesEditViewModel.cs
@@ -1,17 +1,26 @@
 using CommunityToolkit.Mvvm.ComponentModel;
 using CommunityToolkit.Mvvm.Input;
+using Microsoft.Extensions.Logging;
 
 namespace StudiApp.ViewModels
 {
     [QueryProperty("Text", "Text")]
     public partial class CoursesEditViewModel : ObservableObject
     {
+        private readonly ILogger _logger;
+
         [ObservableProperty] 
         private string _text;
 
+        public CoursesEditViewModel(ILogger<CoursesEditViewModel> logger)
+        {
+            _logger = logger;
+        }
+
         [RelayCommandAttribute]
         async Task GoBack()
         {
+            _logger.LogInformation($"Go Back From {nameof(CoursesEditViewModel)}");
             //Go to last on stack with ".."
             await Shell.Current.GoToAsync("..");
         }
diff --git a/StudiApp/StudiApp/viewmodels/DashboardViewModel.cs b/StudiApp/StudiApp/viewmodels/DashboardViewModel.cs
index 4969b26922915bdd7e80056bcf246bac4589016d..b62661941295da78247b717776945cab6becac09 100644
--- a/StudiApp/StudiApp/viewmodels/DashboardViewModel.cs
+++ b/StudiApp/StudiApp/viewmodels/DashboardViewModel.cs
@@ -1,6 +1,7 @@
 using System.Collections.ObjectModel;
 using CommunityToolkit.Mvvm.ComponentModel;
 using CommunityToolkit.Mvvm.Input;
+using Microsoft.Extensions.Logging;
 using StudiApp.Views;
 
 namespace StudiApp.ViewModels
@@ -16,8 +17,11 @@ namespace StudiApp.ViewModels
         [ObservableProperty]
         private string _text = "Click me!";
 
-        public DashboardViewModel()
+        private readonly ILogger _logger;
+
+        public DashboardViewModel(ILogger<DashboardViewModel> logger)
         {
+            _logger = logger;
             _items = new ObservableCollection<string>();
         }
 
@@ -31,6 +35,8 @@ namespace StudiApp.ViewModels
 
             Items.Add(Text);
 
+            _logger.LogInformation($"Clicked Counter {Count} times.");
+
             SemanticScreenReader.Announce(Text);
         }