mirror of
https://github.com/aaru-dps/Aaru.Server.git
synced 2025-12-16 19:24:27 +00:00
Added statistics for runtime version.
This commit is contained in:
@@ -58,6 +58,10 @@ namespace DiscImageChef.Core
|
||||
OperatingSystems = new List<NameValueStats>
|
||||
{
|
||||
new NameValueStats { name = Interop.DetectOS.GetRealPlatformID().ToString(), Value = 1 }
|
||||
},
|
||||
Versions = new List<NameValueStats>
|
||||
{
|
||||
new NameValueStats{ name = Version.GetVersion(), Value = 1 }
|
||||
}
|
||||
};
|
||||
XmlSerializer xs = new XmlSerializer(AllStats.GetType());
|
||||
@@ -73,6 +77,10 @@ namespace DiscImageChef.Core
|
||||
OperatingSystems = new List<NameValueStats>
|
||||
{
|
||||
new NameValueStats { name = Interop.DetectOS.GetRealPlatformID().ToString(), Value = 1 }
|
||||
},
|
||||
Versions = new List<NameValueStats>
|
||||
{
|
||||
new NameValueStats{ name = Version.GetVersion(), Value = 1 }
|
||||
}
|
||||
};
|
||||
}
|
||||
@@ -96,7 +104,7 @@ namespace DiscImageChef.Core
|
||||
{
|
||||
if(nvs.name == Interop.DetectOS.GetRealPlatformID().ToString())
|
||||
{
|
||||
count = nvs.Value;
|
||||
count = nvs.Value + 1;
|
||||
old = nvs;
|
||||
break;
|
||||
}
|
||||
@@ -108,6 +116,33 @@ namespace DiscImageChef.Core
|
||||
count++;
|
||||
AllStats.OperatingSystems.Add(new NameValueStats { name = Interop.DetectOS.GetRealPlatformID().ToString(), Value = count });
|
||||
}
|
||||
else if(CurrentStats != null)
|
||||
AllStats.OperatingSystems = CurrentStats.OperatingSystems;
|
||||
|
||||
if(AllStats.Versions != null)
|
||||
{
|
||||
long count = 0;
|
||||
|
||||
NameValueStats old = null;
|
||||
foreach(NameValueStats nvs in AllStats.Versions)
|
||||
{
|
||||
if(nvs.name == Version.GetVersion())
|
||||
{
|
||||
count = nvs.Value + 1;
|
||||
old = nvs;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if(old != null)
|
||||
AllStats.Versions.Remove(old);
|
||||
|
||||
count++;
|
||||
AllStats.Versions.Add(new NameValueStats { name = Version.GetVersion(), Value = count });
|
||||
}
|
||||
else if(CurrentStats != null)
|
||||
AllStats.Versions = CurrentStats.Versions;
|
||||
|
||||
FileStream fs = new FileStream(Path.Combine(Settings.Settings.StatsPath, "Statistics.xml"), FileMode.Create);
|
||||
XmlSerializer xs = new XmlSerializer(AllStats.GetType());
|
||||
xs.Serialize(fs, AllStats);
|
||||
|
||||
@@ -52,5 +52,10 @@ namespace DiscImageChef.Core
|
||||
Version = typeof(Version).Assembly.GetName().Version.ToString()
|
||||
};
|
||||
}
|
||||
|
||||
public static string GetVersion()
|
||||
{
|
||||
return typeof(Version).Assembly.GetName().Version.ToString();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -40,6 +40,8 @@ namespace DiscImageChef.Metadata
|
||||
{
|
||||
[XmlArrayItem("OperatingSystem")]
|
||||
public List<NameValueStats> OperatingSystems { get; set; }
|
||||
[XmlArrayItem("Version")]
|
||||
public List<NameValueStats> Versions { get; set; }
|
||||
public CommandsStats Commands;
|
||||
[XmlArrayItem("Filesystem")]
|
||||
public List<NameValueStats> Filesystems { get; set; }
|
||||
|
||||
@@ -10,6 +10,30 @@
|
||||
<h1 align="center">Welcome to <i><a href="http://github.com/claunia/discimagechef" target="_blank">DiscImageChef</a></i> Server version <asp:Label id="lblVersion" runat="server"/></h1>
|
||||
<br/>
|
||||
<div id="content" runat="server">
|
||||
<div id="divOperatingSystems" runat="server">
|
||||
<table>
|
||||
<asp:Repeater id="repOperatingSystems" runat="server">
|
||||
<ItemTemplate>
|
||||
<tr>
|
||||
<td>DiscImageChef has run on <i><asp:Label runat="server" Text='<%# Eval("name") %>' /></i> <asp:Label runat="server" Text='<%# Eval("Value") %>' /> times.</td>
|
||||
</tr>
|
||||
</ItemTemplate>
|
||||
</asp:Repeater>
|
||||
</table>
|
||||
<br/>
|
||||
</div>
|
||||
<div id="divVersions" runat="server">
|
||||
<table>
|
||||
<asp:Repeater id="repVersions" runat="server">
|
||||
<ItemTemplate>
|
||||
<tr>
|
||||
<td>DiscImageChef version <i><asp:Label runat="server" Text='<%# Eval("name") %>' /></i> has been used <asp:Label runat="server" Text='<%# Eval("Value") %>' /> times.</td>
|
||||
</tr>
|
||||
</ItemTemplate>
|
||||
</asp:Repeater>
|
||||
</table>
|
||||
<br/>
|
||||
</div>
|
||||
<div id="divCommands" runat="server">
|
||||
<h4>Commands run:</h4>
|
||||
<p>
|
||||
@@ -30,18 +54,6 @@
|
||||
<i>verify</i> command has been run <asp:Label id="lblVerify" runat="server"/> times
|
||||
</p>
|
||||
</div>
|
||||
<div id="divOperatingSystems" runat="server">
|
||||
<table>
|
||||
<asp:Repeater id="repOperatingSystems" runat="server">
|
||||
<ItemTemplate>
|
||||
<tr>
|
||||
<td>DiscImageChef has run on <i><asp:Label runat="server" Text='<%# Eval("name") %>' /></i> <asp:Label runat="server" Text='<%# Eval("Value") %>' /> times.</td>
|
||||
</tr>
|
||||
</ItemTemplate>
|
||||
</asp:Repeater>
|
||||
</table>
|
||||
<br/>
|
||||
</div>
|
||||
<div id="divFilters" runat="server">
|
||||
<h3>Filters found:</h3>
|
||||
<table align="center" border="1">
|
||||
|
||||
@@ -34,6 +34,7 @@ namespace DiscImageChef.Server
|
||||
List<MediaItem> virtualMedia;
|
||||
List<NameValueStats> operatingSystems;
|
||||
List<DeviceItem> devices;
|
||||
List<NameValueStats> versions;
|
||||
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
@@ -69,6 +70,22 @@ namespace DiscImageChef.Server
|
||||
else
|
||||
divOperatingSystems.Visible = false;
|
||||
|
||||
if(statistics.Versions != null)
|
||||
{
|
||||
versions = new List<NameValueStats>();
|
||||
foreach(NameValueStats nvs in statistics.Versions)
|
||||
{
|
||||
if(nvs.name == "previous")
|
||||
versions.Add(new NameValueStats { name = "Previous than 3.4.99.0", Value = nvs.Value });
|
||||
else
|
||||
versions.Add(nvs);
|
||||
}
|
||||
repVersions.DataSource = versions.OrderBy(ver => ver.name).ToList();
|
||||
repVersions.DataBind();
|
||||
}
|
||||
else
|
||||
divVersions.Visible = false;
|
||||
|
||||
if(statistics.Commands != null)
|
||||
{
|
||||
lblAnalyze.Text = statistics.Commands.Analyze.ToString();
|
||||
|
||||
12
DiscImageChef.Server/Default.aspx.designer.cs
generated
12
DiscImageChef.Server/Default.aspx.designer.cs
generated
@@ -19,6 +19,14 @@ namespace DiscImageChef.Server {
|
||||
|
||||
protected System.Web.UI.HtmlControls.HtmlGenericControl content;
|
||||
|
||||
protected System.Web.UI.HtmlControls.HtmlGenericControl divOperatingSystems;
|
||||
|
||||
protected System.Web.UI.WebControls.Repeater repOperatingSystems;
|
||||
|
||||
protected System.Web.UI.HtmlControls.HtmlGenericControl divVersions;
|
||||
|
||||
protected System.Web.UI.WebControls.Repeater repVersions;
|
||||
|
||||
protected System.Web.UI.HtmlControls.HtmlGenericControl divCommands;
|
||||
|
||||
protected System.Web.UI.WebControls.Label lblAnalyze;
|
||||
@@ -51,10 +59,6 @@ namespace DiscImageChef.Server {
|
||||
|
||||
protected System.Web.UI.WebControls.Label lblVerify;
|
||||
|
||||
protected System.Web.UI.HtmlControls.HtmlGenericControl divOperatingSystems;
|
||||
|
||||
protected System.Web.UI.WebControls.Repeater repOperatingSystems;
|
||||
|
||||
protected System.Web.UI.HtmlControls.HtmlGenericControl divFilters;
|
||||
|
||||
protected System.Web.UI.WebControls.Repeater repFilters;
|
||||
|
||||
Reference in New Issue
Block a user