Access log analyzer throwing "Unable to find request date/time in chunk before request" error due to non-US OS system

XMLWordPrintable

    • Type: Bug
    • Resolution: Fixed
    • Priority: Low
    • None
    • Affects Version/s: 6.0.1/OD-15, 4.3.4
    • Component/s: None
    • 4.03

      When running the access log analyzer, it throws the following error:

      Error parsing access_log.2012-07-03 at line 99 : Unable to find request date/tim
      e in chunk before request.
      --------------------------------------------------------------------------------

      10.66.49.57 818x100x2 - [03/Jul/2012:13:38:27 +0800] "GET /s/620/1/3.0.2/_/downl
      oad/batch/com.atlassian.gadgets.dashboard:gadget-dashboard-resources/com.atlassi
      an.gadgets.dashboard:gadget-dashboard-resources.js HTTP/1.1" 200 4566 3 "http://
      10.66.49.57:8010/secure/Dashboard.jspa" "Mozilla/5.0 (Windows; U; Windows NT 6.1
      ; en-US) AppleWebKit/532.5 (KHTML, like Gecko) Chrome/4.1.249.1064 Safari/532.5"
      "1xdtf5a"
      --------------------------------------------------------------------------------

      Error parsing access_log.2012-07-03 at line 100 : Unable to find request date/ti
      me in chunk before request.
      --------------------------------------------------------------------------------

      10.66.49.57 818x101x2 - [03/Jul/2012:13:38:27 +0800] "GET /s/620/1/5.6.8/_/downl
      oad/batch/com.pyxis.greenhopper.jira:gh-globalkeyboardshortcuts/com.pyxis.greenh
      opper.jira:gh-globalkeyboardshortcuts.js HTTP/1.1" 200 944 12 "http://10.66.49.5
      7:8010/secure/Dashboard.jspa" "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) A
      ppleWebKit/532.5 (KHTML, like Gecko) Chrome/4.1.249.1064 Safari/532.5" "1xdtf5a"

      --------------------------------------------------------------------------------

      Too many parse errors: 100
      Unable to parse at least one file: analysis aborted.

      The above is caused by the RequestLogParser.java:136 below:

      private final static DateFormat DATE_FORMAT = new SimpleDateFormat("dd/MMM/yyyy:HH:mm:ss");

      This code will throw an exception in non-us OS system, eg, Chinese Windows7 system.

      This code can be used as temporary fix:

      private final static DateFormat DATE_FORMAT = new SimpleDateFormat("dd/MMM/yyyy:HH:mm:ss", Locale.US);

      All credits goes to our customer fukan for reporting this out

            Assignee:
            Mark Lassau (Inactive)
            Reporter:
            vkharisma
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: