public static string GetLogString(TimeTrackerEvent evt)
    {
        return(regex.Replace(TimeTrackerPreferences.LogLine, (match) => {
            var name = match.Groups["name"].ToString();
            var format = match.Groups["format"].ToString();

            try {
                return logArgs.ContainsKey(name) ?
                logArgs[name](evt, format) :
                match.Value;
            } catch {
                return match.Value;
            }
        }));
    }
 private static void LogEvent(TimeTrackerEvent evt)
 {
     LogFile(GetLogString(evt));
 }