* Add very basic initial login stats to the user server

* Typing 'stats' on the command line will given total number of successful logins today and yesterday
* A little bit more to come, probably
* Refactoring will follow next
This commit is contained in:
Justin Clarke Casey
2008-01-25 19:24:25 +00:00
parent f96d6ea2cd
commit 90c853685c
10 changed files with 206 additions and 22 deletions

View File

@@ -53,7 +53,7 @@ namespace OpenSim.Grid.AssetServer
private IAssetProvider m_assetProvider;
private AssetStatsReporter stats;
protected AssetStatsReporter m_stats;
[STAThread]
public static void Main(string[] args)
@@ -100,10 +100,9 @@ namespace OpenSim.Grid.AssetServer
m_console.Verbose("ASSET", "Starting HTTP process");
BaseHttpServer httpServer = new BaseHttpServer(m_config.HttpPort);
// XXX Hardcoded - could be a plugin later on
stats = new AssetStatsReporter();
m_stats = new AssetStatsReporter();
httpServer.AddStreamHandler(new GetAssetStreamHandler(this, m_assetProvider, stats));
httpServer.AddStreamHandler(new GetAssetStreamHandler(this, m_assetProvider, m_stats));
httpServer.AddStreamHandler(new PostAssetStreamHandler(this, m_assetProvider));
httpServer.Start();
@@ -179,12 +178,12 @@ namespace OpenSim.Grid.AssetServer
case "help":
m_console.Notice(
@"shutdown - shutdown this asset server (USE CAUTION!)
stats - statistical information for this asset server");
stats - statistical information for this server");
break;
case "stats":
MainLog.Instance.Notice("STATS", Environment.NewLine + stats.Report());
MainLog.Instance.Notice("STATS", Environment.NewLine + m_stats.Report());
break;
case "shutdown":

View File

@@ -34,6 +34,7 @@ using OpenSim.Framework;
using OpenSim.Framework.Communications.Cache;
using OpenSim.Framework.Console;
using OpenSim.Framework.Servers;
using OpenSim.Framework.Statistics;
namespace OpenSim.Grid.UserServer
{
@@ -47,6 +48,8 @@ namespace OpenSim.Grid.UserServer
public UserManager m_userManager;
public UserLoginService m_loginService;
public MessageServersConnector m_messagesService;
protected UserStatsReporter m_stats;
private LogBase m_console;
private LLUUID m_lastCreatedUser = LLUUID.Random();
@@ -91,9 +94,11 @@ namespace OpenSim.Grid.UserServer
m_userManager = new UserManager();
m_userManager._config = Cfg;
m_userManager.AddPlugin(Cfg.DatabaseProvider);
m_stats = new UserStatsReporter();
m_loginService = new UserLoginService(
m_userManager, new LibraryRootFolder(), Cfg, Cfg.DefaultStartupMsg);
m_userManager, new LibraryRootFolder(), m_stats, Cfg, Cfg.DefaultStartupMsg);
m_messagesService = new MessageServersConnector(MainLog.Instance);
@@ -180,6 +185,7 @@ namespace OpenSim.Grid.UserServer
{
case "help":
m_console.Notice("create user - create a new user");
m_console.Notice("stats - statistical information for this server");
m_console.Notice("shutdown - shutdown the grid (USE CAUTION!)");
break;
@@ -192,6 +198,10 @@ namespace OpenSim.Grid.UserServer
m_console.Close();
Environment.Exit(0);
break;
case "stats":
MainLog.Instance.Notice("STATS", Environment.NewLine + m_stats.Report());
break;
case "test-inventory":
// RestObjectPosterResponse<List<InventoryFolderBase>> requester = new RestObjectPosterResponse<List<InventoryFolderBase>>();

View File

@@ -38,6 +38,7 @@ using OpenSim.Framework.Communications.Cache;
using OpenSim.Framework.Console;
using OpenSim.Framework.Data;
using OpenSim.Framework.Servers;
using OpenSim.Framework.Statistics;
using OpenSim.Framework.UserManagement;
using InventoryFolder=OpenSim.Framework.InventoryFolder;
@@ -53,8 +54,9 @@ namespace OpenSim.Grid.UserServer
public UserConfig m_config;
public UserLoginService(
UserManagerBase userManager, LibraryRootFolder libraryRootFolder, UserConfig config, string welcomeMess)
: base(userManager, libraryRootFolder, welcomeMess)
UserManagerBase userManager, LibraryRootFolder libraryRootFolder,
UserStatsReporter statsCollector, UserConfig config, string welcomeMess)
: base(userManager, libraryRootFolder, statsCollector, welcomeMess)
{
m_config = config;
}
@@ -290,4 +292,4 @@ namespace OpenSim.Grid.UserServer
}
}
}
}
}