Log uploading.

This commit is contained in:
Matthew Bowra-Dean
2010-05-26 19:23:58 +12:00
parent a6d0adbab3
commit e7c7a117a8
3 changed files with 50 additions and 1 deletions

View File

@@ -22,6 +22,9 @@ using System;
using System.Diagnostics;
using System.Globalization;
using System.Windows.Forms;
using System.Net;
using System.IO.Compression;
using System.IO;
namespace OpenRA
{
@@ -46,10 +49,35 @@ namespace OpenRA
catch( Exception e )
{
Log.Write( "{0}", e.ToString() );
UploadLog();
throw;
}
}
static void UploadLog()
{
Log.Close();
var logfile = File.OpenRead(Log.Filename);
byte[] fileContents = logfile.ReadAllBytes();
var ms = new MemoryStream();
using (var gzip = new GZipStream(ms, CompressionMode.Compress, true))
gzip.Write(fileContents, 0, fileContents.Length);
ms.Position = 0;
byte[] buffer = ms.ReadAllBytes();
WebRequest request = WebRequest.Create("http://open-ra.org/logs/upload.php");
request.ContentType = "application/x-gzip";
request.ContentLength = buffer.Length;
request.Method = "POST";
using (var requestStream = request.GetRequestStream())
requestStream.Write(buffer, 0, buffer.Length);
var response = (HttpWebResponse)request.GetResponse();
}
static void Run( string[] args )
{
Game.Initialize( new Settings( args ) );