public override bool Handle(ApacheLogParser apacheLogParser) { var tokens = apacheLogParser.ProccessingString.Split(' '); apacheLogParser.Result.Host = tokens.First(); return(true); }
public override bool Handle(ApacheLogParser apacheLogParser) { string line = null; const int middlePivot = 1; line = apacheLogParser.ProccessingString.Split('[', ']')[middlePivot]; apacheLogParser.Result.DateTimeOffset = DateTimeHelpers.ConvertApacheLogDateTime(line); return(true); }
public override bool Handle(ApacheLogParser apacheLogParser) { var routeWithQueries = apacheLogParser.ProccessingString.Split('\"')[1].Split(' ')[1]; if (!IsAppropriateUrl(routeWithQueries)) { return(false); } var questionMarkIndex = routeWithQueries.IndexOf('?'); if (questionMarkIndex != -1) { apacheLogParser.Result.Route = routeWithQueries.Substring(0, questionMarkIndex - 1); apacheLogParser.Result.QueryParameters = routeWithQueries.Substring(questionMarkIndex, routeWithQueries.Length - questionMarkIndex); } else { apacheLogParser.Result.Route = routeWithQueries; apacheLogParser.Result.QueryParameters = string.Empty; } return(true); }
public override bool Handle(ApacheLogParser apacheLogParser) { apacheLogParser.Result.Geolocation = apacheLogParser.Result.DateTimeOffset.GetTimeZone(); return(true); }