diff --git a/DnsServerCore/DnsWebService.cs b/DnsServerCore/DnsWebService.cs index 84072a8b..cce2348f 100644 --- a/DnsServerCore/DnsWebService.cs +++ b/DnsServerCore/DnsWebService.cs @@ -405,7 +405,12 @@ namespace DnsServerCore string logFileName = pathParts[2]; string logFile = Path.Combine(_log.LogFolder, logFileName + ".log"); - LogManager.DownloadLog(response, logFile, 2 * 1024 * 1024); + int limit = 0; + string strLimit = request.QueryString["limit"]; + if (!string.IsNullOrEmpty(strLimit)) + limit = int.Parse(strLimit); + + LogManager.DownloadLog(response, logFile, limit * 1024 * 1024); } else { diff --git a/DnsServerCore/LogManager.cs b/DnsServerCore/LogManager.cs index 14c6efe8..91a38907 100644 --- a/DnsServerCore/LogManager.cs +++ b/DnsServerCore/LogManager.cs @@ -34,7 +34,7 @@ namespace DnsServerCore string _logFile; StreamWriter _logOut; DateTime _logDate; - + readonly object _logFileLock = new object(); #endregion @@ -117,7 +117,7 @@ namespace DnsServerCore response.ContentType = "text/plain"; response.AddHeader("Content-Disposition", "attachment;filename=" + Path.GetFileName(logFile)); - if (limit > fS.Length) + if ((limit > fS.Length) || (limit < 1)) limit = fS.Length; OffsetStream oFS = new OffsetStream(fS, 0, limit); diff --git a/DnsServerCore/www/js/main.js b/DnsServerCore/www/js/main.js index b1a5855b..c44ebcd4 100644 --- a/DnsServerCore/www/js/main.js +++ b/DnsServerCore/www/js/main.js @@ -2651,7 +2651,7 @@ function viewLog(logFile) { divLogViewer.show(); HTTPGetFileRequest({ - url: "/log/" + logFile + "?token=" + token, + url: "/log/" + logFile + "?limit=2&token=" + token, success: function (response) { divLogViewerLoader.hide();