Changeset 6458
- Timestamp:
- 06/20/11 23:56:31 (13 years ago)
- Location:
- branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Web/Hive-3.4
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Web/Hive-3.4/Status.aspx
r6457 r6458 1 1 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Status.aspx.cs" Inherits="Status" %> 2 2 3 <%@ Register Assembly="System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" 4 Namespace="System.Web.UI.DataVisualization.Charting" TagPrefix="asp" %> 3 5 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 4 6 <html xmlns="http://www.w3.org/1999/xhtml"> … … 18 20 <asp:Label ID="waitingJobsLabel" runat="server" /> 19 21 <br /> 20 Slaves :22 Slaves (CPU Utilization): 21 23 <asp:Label ID="slavesLabel" runat="server" /> 22 24 <br /> 25 Avg. CPU Utilization: 26 <asp:Label ID="cpuUtilizationLabel" runat="server" /> 23 27 <br /> 24 <asp:Label ID="statisticsLabel" runat="server" /> 25 <asp:Table ID="Table1" runat="server" Height="64px" Width="75px"> 26 </asp:Table> 28 <br /> 29 Days: 30 <asp:DropDownList ID="daysDropDownList" runat="server" AutoPostBack="True" OnSelectedIndexChanged="daysDropDownList_SelectedIndexChanged"> 31 <asp:ListItem Value="1"></asp:ListItem> 32 <asp:ListItem Value="2"></asp:ListItem> 33 <asp:ListItem Value="3"></asp:ListItem> 34 <asp:ListItem Value="4"></asp:ListItem> 35 <asp:ListItem Value="5"></asp:ListItem> 36 <asp:ListItem Value="6"></asp:ListItem> 37 <asp:ListItem Value="7"></asp:ListItem> 38 <asp:ListItem Value="8"></asp:ListItem> 39 <asp:ListItem Value="9"></asp:ListItem> 40 <asp:ListItem Value="10"></asp:ListItem> 41 <asp:ListItem Value="11"></asp:ListItem> 42 <asp:ListItem Value="12"></asp:ListItem> 43 <asp:ListItem Value="13"></asp:ListItem> 44 <asp:ListItem Value="14"></asp:ListItem> 45 <asp:ListItem Value="All"></asp:ListItem> 46 </asp:DropDownList> 47 <br /> 48 <br /> 49 Avg. CPU Utilization History of all Slaves<br /> 50 <asp:Chart ID="cpuUtilizationChart" runat="server" Height="270px" Width="1900px"> 51 <Series> 52 <asp:Series BorderWidth="2" ChartType="Line" Color="0, 176, 80" Name="Series1" XValueType="DateTime" 53 YValueType="Double"> 54 </asp:Series> 55 </Series> 56 <ChartAreas> 57 <asp:ChartArea BackColor="Black" BackHatchStyle="DottedGrid" BackSecondaryColor="0, 96, 43" 58 BorderColor="DarkGreen" BorderDashStyle="Dot" Name="ChartArea1"> 59 <AxisY> 60 <MajorGrid Enabled="False" /> 61 </AxisY> 62 <AxisX IntervalAutoMode="VariableCount" IntervalOffset="1" IntervalOffsetType="Hours" 63 IntervalType="Hours" IsLabelAutoFit="False" > 64 <MajorGrid Enabled="False" /> 65 <LabelStyle Format="d/M/yyyy HH:mm" IsStaggered="True" /> 66 </AxisX> 67 </asp:ChartArea> 68 </ChartAreas> 69 </asp:Chart> 70 <br /> 71 <br /> 72 Cores/Used Cores History<br /> 73 <asp:Chart ID="coresChart" runat="server" Palette="None" Width="1900px" PaletteCustomColors="137, 165, 78; 185, 205, 150"> 74 <Series> 75 <asp:Series ChartType="Area" Name="Cores" XValueType="DateTime" YValueType="Double"> 76 </asp:Series> 77 <asp:Series ChartArea="ChartArea1" ChartType="Area" Name="FreeCores" XValueType="DateTime" 78 YValueType="Double"> 79 </asp:Series> 80 </Series> 81 <ChartAreas> 82 <asp:ChartArea BackColor="Black" BackHatchStyle="DottedGrid" BackSecondaryColor="0, 96, 43" 83 BorderColor="DarkGreen" BorderDashStyle="Dot" Name="ChartArea1"> 84 <AxisY> 85 <MajorGrid Enabled="False" /> 86 </AxisY> 87 <AxisX IntervalAutoMode="VariableCount" IntervalOffset="1" IntervalOffsetType="Hours" 88 IntervalType="Hours" IsLabelAutoFit="False" > 89 <MajorGrid Enabled="False" /> 90 <LabelStyle Format="d/M/yyyy HH:mm" IsStaggered="True" /> 91 </AxisX> 92 </asp:ChartArea> 93 </ChartAreas> 94 </asp:Chart> 95 <br /> 96 <br /> 97 Memory/Used Memory History (GB)<br /> 98 <asp:Chart ID="memoryChart" runat="server" Palette="None" PaletteCustomColors="170, 70, 67; 209, 147, 146" 99 Width="1900px"> 100 <Series> 101 <asp:Series ChartType="Area" Name="Cores" XValueType="DateTime" YValueType="Double"> 102 </asp:Series> 103 <asp:Series ChartArea="ChartArea1" ChartType="Area" Name="FreeCores" XValueType="DateTime" 104 YValueType="Double"> 105 </asp:Series> 106 </Series> 107 <ChartAreas> 108 <asp:ChartArea BackColor="Black" BackHatchStyle="DottedGrid" BackSecondaryColor="0, 96, 43" 109 BorderColor="DarkGreen" BorderDashStyle="Dot" Name="ChartArea1"> 110 <AxisY> 111 <MajorGrid Enabled="False" /> 112 </AxisY> 113 <AxisX IntervalAutoMode="VariableCount" IntervalOffset="1" IntervalOffsetType="Hours" 114 IntervalType="Hours" IsLabelAutoFit="False" > 115 <MajorGrid Enabled="False" /> 116 <LabelStyle Format="d/M/yyyy HH:mm" IsStaggered="True" /> 117 </AxisX> 118 </asp:ChartArea> 119 </ChartAreas> 120 </asp:Chart> 121 <br /> 122 Speedup (ComputedMinutes/Minute)<br /> 123 <asp:Chart ID="speedupChartMinutes" runat="server" Palette="None" Width="1900px" 124 PaletteCustomColors="79, 129, 189"> 125 <Series> 126 <asp:Series ChartType="Area" Name="Cores" XValueType="DateTime" YValueType="Double"> 127 </asp:Series> 128 </Series> 129 <ChartAreas> 130 <asp:ChartArea BackColor="Black" BackHatchStyle="DottedGrid" BackSecondaryColor="0, 96, 43" 131 BorderColor="DarkGreen" BorderDashStyle="Dot" Name="ChartArea1"> 132 <AxisY Minimum="-5"> 133 <MajorGrid Enabled="False" /> 134 </AxisY> 135 <AxisX IntervalAutoMode="VariableCount" IntervalOffset="1" IntervalOffsetType="Hours" 136 IntervalType="Hours" IsLabelAutoFit="False" > 137 <MajorGrid Enabled="False" /> 138 <LabelStyle Format="d/M/yyyy HH:mm" IsStaggered="True" /> 139 </AxisX> 140 </asp:ChartArea> 141 </ChartAreas> 142 </asp:Chart> 143 <br /> 144 <br /> 145 Speedup (ComputedHours/Hour)<br /> 146 <br /> 147 <asp:Chart ID="speedupChartHours" runat="server" Palette="None" Width="1900px" PaletteCustomColors="79, 129, 189"> 148 <Series> 149 <asp:Series ChartType="Area" Name="Cores" XValueType="DateTime" YValueType="Double"> 150 </asp:Series> 151 </Series> 152 <ChartAreas> 153 <asp:ChartArea BackColor="Black" BackHatchStyle="DottedGrid" BackSecondaryColor="0, 96, 43" 154 BorderColor="DarkGreen" BorderDashStyle="Dot" Name="ChartArea1"> 155 <AxisY> 156 <MajorGrid Enabled="False" /> 157 </AxisY> 158 <AxisX IntervalAutoMode="VariableCount" IntervalOffset="1" IntervalOffsetType="Hours" 159 IntervalType="Hours" IsLabelAutoFit="False"> 160 <MajorGrid Enabled="False" /> 161 <LabelStyle Format="d/M/yyyy HH:mm" IsStaggered="True" /> 162 </AxisX> 163 </asp:ChartArea> 164 </ChartAreas> 165 </asp:Chart> 27 166 <br /> 28 167 </div> -
branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Web/Hive-3.4/Status.aspx.cs
r6457 r6458 9 9 using HeuristicLab.Services.Hive.Common.DataTransfer; 10 10 using System.Text; 11 using System.Web.UI.DataVisualization.Charting; 11 12 12 13 public partial class Status : System.Web.UI.Page { … … 15 16 var onlineSlaves = dao.GetSlaves(x => x.SlaveState == SlaveState.Calculating || x.SlaveState == SlaveState.Idle); 16 17 17 int availableCores = onlineSlaves.Sum(s => s.Cores.Value);18 int usedCores = availableCores - onlineSlaves.Sum(s => s.FreeCores.Value);19 int jobCount= ServiceLocator.Instance.HiveDao.GetJobs(x => x.State == JobState.Waiting).Count();18 int currentlyAvailableCores = onlineSlaves.Sum(s => s.Cores.Value); 19 int currentlyUsedCores = currentlyAvailableCores - onlineSlaves.Sum(s => s.FreeCores.Value); 20 int currentlyJobsWaiting = ServiceLocator.Instance.HiveDao.GetJobs(x => x.State == JobState.Waiting).Count(); 20 21 21 this.availableCoresLabel.Text = availableCores.ToString();22 this.usedCoresLabel.Text = usedCores.ToString();23 this.waitingJobsLabel.Text = jobCount.ToString();22 this.availableCoresLabel.Text = currentlyAvailableCores.ToString(); 23 this.usedCoresLabel.Text = currentlyUsedCores.ToString(); 24 this.waitingJobsLabel.Text = currentlyJobsWaiting.ToString(); 24 25 25 slavesLabel.Text = string.Join(", ", onlineSlaves.Select(x => x.Name));26 slavesLabel.Text = string.Join(", ", onlineSlaves.Select(x => string.Format("{0} ({1} %)", x.Name, Math.Round(x.CpuUtilization, 2)))); 26 27 27 var stats = dao.GetStatistics(x => x.Timestamp >= DateTime.Now.Subtract(TimeSpan.FromDays(7))).OrderByDescending(x => x.TimeStamp); 28 var sb = new StringBuilder(); 29 int i = 0; 30 foreach (var s in stats) { 31 if (i % 60 == 0) { // just ~1 per hour 32 var cores = s.SlaveStatistics.Sum(x => x.Cores); 33 var usdCores = cores - s.SlaveStatistics.Sum(x => x.FreeCores); 28 cpuUtilizationLabel.Text = onlineSlaves.Count() > 0 ? onlineSlaves.Average(s => s.CpuUtilization).ToString() : "0.0"; 29 30 HeuristicLab.Services.Hive.Common.DataTransfer.Statistics[] stats; 31 if (daysDropDownList.SelectedValue == "All") 32 stats = dao.GetStatistics(x => true).OrderByDescending(x => x.TimeStamp).ToArray(); 33 else 34 stats = dao.GetStatistics(x => x.Timestamp >= DateTime.Now.Subtract(TimeSpan.FromDays(int.Parse(daysDropDownList.SelectedValue)))).OrderByDescending(x => x.TimeStamp).ToArray(); 35 36 37 for (int i = 0; i < stats.Length; i++) { 38 var s = stats[i]; 39 40 var averageCpuUtilization = s.SlaveStatistics.Count() > 0 ? s.SlaveStatistics.Average(x => x.CpuUtilization) : 0.0; 41 cpuUtilizationChart.Series[0].Points.Add(new DataPoint(s.TimeStamp.ToOADate(), averageCpuUtilization)); 42 43 var cores = s.SlaveStatistics.Sum(x => x.Cores); 44 45 var usedCores = cores - s.SlaveStatistics.Sum(x => x.FreeCores); 46 coresChart.Series[0].Points.AddXY(s.TimeStamp.ToOADate(), cores); 47 coresChart.Series[1].Points.AddXY(s.TimeStamp.ToOADate(), usedCores); 48 49 var memory = s.SlaveStatistics.Sum(x => x.Memory); 50 var usedMemory = memory - s.SlaveStatistics.Sum(x => x.FreeMemory); 51 memoryChart.Series[0].Points.AddXY(s.TimeStamp.ToOADate(), memory/1024); 52 memoryChart.Series[1].Points.AddXY(s.TimeStamp.ToOADate(), usedMemory/1024); 53 54 if (i > 0) { 34 55 var execTime = new TimeSpan(s.UserStatistics.Sum(x => x.ExecutionTime.Ticks)); 35 sb.AppendLine(string.Format("{0}: Cores: {1}, UsedCores: {2}, TotalExecutionTime: {3}<br/>", s.TimeStamp.ToString(), cores, usdCores, execTime.ToString())); 56 var execTimePrev = new TimeSpan(stats[i - 1].UserStatistics.Sum(x => x.ExecutionTime.Ticks)); 57 var execTimeDifference = execTimePrev - execTime; 58 59 var timeDifference = stats[i - 1].TimeStamp - s.TimeStamp; // the difference between statistic entries is not alway exactly 1 minute 60 var speedup = execTimeDifference.TotalMinutes / timeDifference.TotalMinutes; 61 speedupChartMinutes.Series[0].Points.AddXY(s.TimeStamp.ToOADate(), speedup); 36 62 } 37 i++; 63 if (i - 60 >= 0) { 64 var execTime = new TimeSpan(s.UserStatistics.Sum(x => x.ExecutionTime.Ticks)); 65 var execTimePrev = new TimeSpan(stats[i - 60].UserStatistics.Sum(x => x.ExecutionTime.Ticks)); 66 var execTimeDifference = execTimePrev - execTime; 67 68 var timeDifference = stats[i - 60].TimeStamp - s.TimeStamp; // the difference between statistic entries is not alway exactly 1 minute 69 var speedup = execTimeDifference.TotalMinutes / timeDifference.TotalMinutes; 70 speedupChartHours.Series[0].Points.AddXY(s.TimeStamp.ToOADate(), speedup); 71 } 38 72 } 39 statisticsLabel.Text = sb.ToString(); 73 } 74 75 protected void daysDropDownList_SelectedIndexChanged(object sender, EventArgs e) { 76 40 77 } 41 78 } -
branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Web/Hive-3.4/Web.config
r6452 r6458 1 <?xml version="1.0"?>1 <?xml version="1.0"?> 2 2 <configuration> 3 4 <configSections> 5 <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" > 6 <section name="HeuristicLab.Services.Hive.DataAccess.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> 7 <section name="HeuristicLab.Services.Hive.Common.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> 8 </sectionGroup> 9 </configSections> 10 11 <applicationSettings> 12 <HeuristicLab.Services.Hive.DataAccess.Settings> 13 <!-- Timeout for long running database command (storing or loading jobData) --> 14 <setting name="LongRunningDatabaseCommandTimeout" serializeAs="String"> 15 <value>00:05:33</value> 16 </setting> 17 </HeuristicLab.Services.Hive.DataAccess.Settings> 18 19 <HeuristicLab.Services.Hive.Common.Settings> 20 <!-- If a slave does not send a heartbeat for this time, it is set offline which means all of its jobs are rescheduled --> 21 <setting name="SlaveHeartbeatTimeout" serializeAs="String"> 22 <value>00:01:00</value> 23 </setting> 24 25 <!-- When a job is in state `Calculating` this is the maximum time it does not have to send heartbeats, otherwise its rescheduled --> 26 <setting name="CalculatingJobHeartbeatTimeout" serializeAs="String"> 27 <value>00:05:30</value> 28 </setting> 29 30 <!-- When a job is in state `Transferring` this is the maximum time it does not have to send heartbeats, otherwise its rescheduled --> 31 <setting name="TransferringJobHeartbeatTimeout" serializeAs="String"> 32 <value>00:05:30</value> 33 </setting> 34 </HeuristicLab.Services.Hive.Common.Settings> 35 </applicationSettings> 36 37 <connectionStrings> 38 <add name="HeuristicLab.Authentication" connectionString="data source=localhost;Integrated Security=SSPI;Initial Catalog=HeuristicLab.Authentication"/> 39 </connectionStrings> 40 41 <system.web> 42 <compilation debug="true" targetFramework="4.0" /> 43 <membership> 44 <providers> 45 <clear/> 46 <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="HeuristicLab.Authentication" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="HeuristicLab.Authentication"/> 47 </providers> 48 </membership> 49 <roleManager enabled="true"> 50 <providers> 51 <clear/> 52 <add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="HeuristicLab.Authentication" applicationName="HeuristicLab.Authentication"/> 53 </providers> 54 </roleManager> 55 <pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"/> 56 <httpRuntime maxRequestLength="1048576" /> 57 </system.web> 58 59 <system.serviceModel> 60 <diagnostics> 61 <messageLogging logEntireMessage="true" logMalformedMessages="true" logMessagesAtServiceLevel="true" logMessagesAtTransportLevel="true" maxMessagesToLog="3000"/> 62 </diagnostics> 63 64 <bindings> 65 <wsHttpBinding> 66 <binding name="WSHttpBinding_IHiveService" 67 receiveTimeout="00:10:00" 68 sendTimeout="00:10:00" 69 maxBufferPoolSize="2147483647" 70 maxReceivedMessageSize="2147483647"> 71 <readerQuotas maxStringContentLength="2147483647" maxArrayLength="2147483647" /> 72 <security mode="Message"> 73 <transport clientCredentialType="Certificate"/> 74 <message clientCredentialType="UserName" /> 75 </security> 76 </binding> 77 </wsHttpBinding> 78 </bindings> 79 80 <behaviors> 81 <serviceBehaviors> 82 <behavior name="ServiceBehaviour_IHiveService"> 83 <!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment --> 84 <serviceMetadata httpGetEnabled="true" httpsGetEnabled="false" /> 85 <!-- To receive exception details in faults for debugging purposes, set the value below to true. Set to false before deployment to avoid disclosing exception information --> 86 <serviceDebug httpHelpPageEnabled="true" includeExceptionDetailInFaults="true" /> 87 <serviceAuthorization principalPermissionMode="UseAspNetRoles" roleProviderName="AspNetSqlRoleProvider" /> 88 <serviceCredentials> 89 <serviceCertificate findValue="localhost" x509FindType="FindBySubjectName" /> 90 <userNameAuthentication userNamePasswordValidationMode="MembershipProvider" membershipProviderName="AspNetSqlMembershipProvider" /> 91 </serviceCredentials> 92 <serviceSecurityAudit auditLogLocation="Application" suppressAuditFailure="false" messageAuthenticationAuditLevel="SuccessOrFailure" /> 93 <serviceThrottling maxConcurrentCalls="100" /> 94 <dataContractSerializer maxItemsInObjectGraph="2147483647" /> 95 </behavior> 96 </serviceBehaviors> 97 </behaviors> 98 99 <services> 100 <service behaviorConfiguration="ServiceBehaviour_IHiveService" name="HeuristicLab.Services.Hive.HiveService"> 101 <endpoint address="mex" binding="mexHttpBinding" bindingConfiguration="" name="MexEndpoint" contract="IMetadataExchange" /> 102 <endpoint binding="wsHttpBinding" bindingConfiguration="WSHttpBinding_IHiveService" name="WSHttpBinding_IHiveService" contract="HeuristicLab.Services.Hive.Common.ServiceContracts.IHiveService" /> 103 </service> 104 </services> 105 106 <serviceHostingEnvironment multipleSiteBindingsEnabled="true" /> 107 </system.serviceModel> 108 109 <system.webServer> 110 <directoryBrowse enabled="true"/> 111 </system.webServer> 112 3 <configSections> 4 <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> 5 <section name="HeuristicLab.Services.Hive.DataAccess.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/> 6 <section name="HeuristicLab.Services.Hive.Common.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/> 7 </sectionGroup> 8 </configSections> 9 <appSettings> 10 <add key="ChartImageHandler" value="storage=file;timeout=20;dir=c:\TempImageFiles\;" /> 11 </appSettings> 12 <applicationSettings> 13 <HeuristicLab.Services.Hive.DataAccess.Settings> 14 <!-- Timeout for long running database command (storing or loading jobData) --> 15 <setting name="LongRunningDatabaseCommandTimeout" serializeAs="String"> 16 <value>00:05:33</value> 17 </setting> 18 </HeuristicLab.Services.Hive.DataAccess.Settings> 19 <HeuristicLab.Services.Hive.Common.Settings> 20 <!-- If a slave does not send a heartbeat for this time, it is set offline which means all of its jobs are rescheduled --> 21 <setting name="SlaveHeartbeatTimeout" serializeAs="String"> 22 <value>00:01:00</value> 23 </setting> 24 <!-- When a job is in state `Calculating` this is the maximum time it does not have to send heartbeats, otherwise its rescheduled --> 25 <setting name="CalculatingJobHeartbeatTimeout" serializeAs="String"> 26 <value>00:05:30</value> 27 </setting> 28 <!-- When a job is in state `Transferring` this is the maximum time it does not have to send heartbeats, otherwise its rescheduled --> 29 <setting name="TransferringJobHeartbeatTimeout" serializeAs="String"> 30 <value>00:05:30</value> 31 </setting> 32 </HeuristicLab.Services.Hive.Common.Settings> 33 </applicationSettings> 34 <connectionStrings> 35 <add name="HeuristicLab.Authentication" connectionString="data source=localhost;Integrated Security=SSPI;Initial Catalog=HeuristicLab.Authentication"/> 36 </connectionStrings> 37 <system.web> 38 <httpHandlers> 39 <add path="ChartImg.axd" verb="GET,HEAD,POST" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" 40 validate="false" /> 41 </httpHandlers> 42 <compilation debug="true" targetFramework="4.0"> 43 <assemblies> 44 <add assembly="System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/></assemblies></compilation> 45 <membership> 46 <providers> 47 <clear/> 48 <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="HeuristicLab.Authentication" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="HeuristicLab.Authentication"/> 49 </providers> 50 </membership> 51 <roleManager enabled="true"> 52 <providers> 53 <clear/> 54 <add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="HeuristicLab.Authentication" applicationName="HeuristicLab.Authentication"/> 55 </providers> 56 </roleManager> 57 <pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"> 58 <controls> 59 <add tagPrefix="asp" namespace="System.Web.UI.DataVisualization.Charting" 60 assembly="System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" /> 61 </controls> 62 </pages> 63 <httpRuntime maxRequestLength="1048576"/> 64 </system.web> 65 <system.serviceModel> 66 <diagnostics> 67 <messageLogging logEntireMessage="true" logMalformedMessages="true" logMessagesAtServiceLevel="true" logMessagesAtTransportLevel="true" maxMessagesToLog="3000"/> 68 </diagnostics> 69 <bindings> 70 <wsHttpBinding> 71 <binding name="WSHttpBinding_IHiveService" receiveTimeout="00:10:00" sendTimeout="00:10:00" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647"> 72 <readerQuotas maxStringContentLength="2147483647" maxArrayLength="2147483647"/> 73 <security mode="Message"> 74 <transport clientCredentialType="Certificate"/> 75 <message clientCredentialType="UserName"/> 76 </security> 77 </binding> 78 </wsHttpBinding> 79 </bindings> 80 <behaviors> 81 <serviceBehaviors> 82 <behavior name="ServiceBehaviour_IHiveService"> 83 <!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment --> 84 <serviceMetadata httpGetEnabled="true" httpsGetEnabled="false"/> 85 <!-- To receive exception details in faults for debugging purposes, set the value below to true. Set to false before deployment to avoid disclosing exception information --> 86 <serviceDebug httpHelpPageEnabled="true" includeExceptionDetailInFaults="true"/> 87 <serviceAuthorization principalPermissionMode="UseAspNetRoles" roleProviderName="AspNetSqlRoleProvider"/> 88 <serviceCredentials> 89 <serviceCertificate findValue="localhost" x509FindType="FindBySubjectName"/> 90 <userNameAuthentication userNamePasswordValidationMode="MembershipProvider" membershipProviderName="AspNetSqlMembershipProvider"/> 91 </serviceCredentials> 92 <serviceSecurityAudit auditLogLocation="Application" suppressAuditFailure="false" messageAuthenticationAuditLevel="SuccessOrFailure"/> 93 <serviceThrottling maxConcurrentCalls="100"/> 94 <dataContractSerializer maxItemsInObjectGraph="2147483647"/> 95 </behavior> 96 </serviceBehaviors> 97 </behaviors> 98 <services> 99 <service behaviorConfiguration="ServiceBehaviour_IHiveService" name="HeuristicLab.Services.Hive.HiveService"> 100 <endpoint address="mex" binding="mexHttpBinding" bindingConfiguration="" name="MexEndpoint" contract="IMetadataExchange"/> 101 <endpoint binding="wsHttpBinding" bindingConfiguration="WSHttpBinding_IHiveService" name="WSHttpBinding_IHiveService" contract="HeuristicLab.Services.Hive.Common.ServiceContracts.IHiveService"/> 102 </service> 103 </services> 104 <serviceHostingEnvironment multipleSiteBindingsEnabled="true"/> 105 </system.serviceModel> 106 <system.webServer> 107 <directoryBrowse enabled="true" /> 108 <handlers> 109 <remove name="ChartImageHandler" /> 110 <add name="ChartImageHandler" preCondition="integratedMode" verb="GET,HEAD,POST" 111 path="ChartImg.axd" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" /> 112 </handlers> 113 </system.webServer> 113 114 </configuration>
Note: See TracChangeset
for help on using the changeset viewer.