Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Segmented Visitor Log does not have data with Page Title containing whitespace (URL contains +) #13113

Closed
eetasse opened this issue Jun 28, 2018 · 4 comments · Fixed by #13198
Assignees
Labels
Bug For errors / faults / flaws / inconsistencies etc.
Milestone

Comments

@eetasse
Copy link

eetasse commented Jun 28, 2018

hello,
We are using Matomo since a few weeks and we are facing this :

  • Go to Behaviour | Pages
  • Then we have the list of the visited pages
  • When we want to open the segmented Visitor Log then we have no data in the log if the page title contains whitespace (or the URL contains + character)
    For instance :

URL are managed by Atlassian Confluence and we have maybe 90% of URL based on + character. So we have this issue for a huge amount of pages. Did we miss something in the Matomo configuration ?
image

Thanks
Emmanuel

@fdellwing
Copy link
Contributor

Can confirm this.

@mattab mattab added the Bug For errors / faults / flaws / inconsistencies etc. label Jun 28, 2018
@mattab mattab added this to the 3.6.0 milestone Jun 28, 2018
@sgiehl sgiehl self-assigned this Jul 23, 2018
@sgiehl
Copy link
Member

sgiehl commented Jul 23, 2018

@eetasse @fdellwing anyone of you able to check if the solution of #13198 works for you?

@fdellwing
Copy link
Contributor

I do not think it is fixxed, but I also do not think it is the correct file?

So this is the request (as HAR) outgoing after clicking on segmented vistors:

{
  "log": {
    "version": "1.1",
    "creator": {
      "name": "Firefox",
      "version": "61.0.1"
    },
    "browser": {
      "name": "Firefox",
      "version": "61.0.1"
    },
    "pages": [
      {
        "startedDateTime": "2018-07-24T09:35:06.220+02:00",
        "id": "page_2",
        "title": "Becker Mining Global - Montag, 23. Juli 2018 - Webanalytik-Berichte - Matomo",
        "pageTimings": {
          "onContentLoad": -1,
          "onLoad": -1
        }
      }
    ],
    "entries": [
      {
        "pageref": "page_2",
        "startedDateTime": "2018-07-24T09:35:06.220+02:00",
        "request": {
          "bodySize": 0,
          "method": "POST",
          "url": "https://becker-stats.live.promato.de/index.php?segment=pageUrl==https%3A%2F%2Fwww.becker-mining.com%2Fen%2Fproducts%2Fmincos%2Fnon+flameproof%2Fmonitioring+systems%2Fbelt-rip-scanner&date=yesterday&module=Live&action=indexVisitorLog&disableLink=1&small=1&hideProfileLink=1&period=day&idSite=1",
          "httpVersion": "HTTP/1.1",
          "headers": [
            {
              "name": "Host",
              "value": "becker-stats.live.promato.de"
            },
            {
              "name": "User-Agent",
              "value": "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:61.0) Gecko/20100101 Firefox/61.0"
            },
            {
              "name": "Accept",
              "value": "text/html, */*; q=0.01"
            },
            {
              "name": "Accept-Language",
              "value": "de"
            },
            {
              "name": "Accept-Encoding",
              "value": "gzip, deflate, br"
            },
            {
              "name": "Referer",
              "value": "https://becker-stats.live.promato.de/index.php?module=CoreHome&action=index&date=yesterday&period=day&idSite=1"
            },
            {
              "name": "X-Requested-With",
              "value": "XMLHttpRequest"
            },
            {
              "name": "Cookie",
              "value": "piwik_auth=cropped; PIWIK_SESSID=cropped; zenMode=0; piwik_lang=language%3DczoyOiJkZSI7%3A_%3Da8991417cb2c050ec5e6f41158725c68e8dec2ab"
            },
            {
              "name": "DNT",
              "value": "1"
            },
            {
              "name": "Connection",
              "value": "keep-alive"
            },
            {
              "name": "Pragma",
              "value": "no-cache"
            },
            {
              "name": "Cache-Control",
              "value": "no-cache"
            },
            {
              "name": "Content-Length",
              "value": "0"
            }
          ],
          "cookies": [
            {
              "name": "piwik_auth",
              "value": "cropped"
            },
            {
              "name": "PIWIK_SESSID",
              "value": "cropped"
            },
            {
              "name": "zenMode",
              "value": "0"
            },
            {
              "name": "piwik_lang",
              "value": "language=czoyOiJkZSI7:_=a8991417cb2c050ec5e6f41158725c68e8dec2ab"
            }
          ],
          "queryString": [
            {
              "name": "segment",
              "value": "pageUrl"
            },
            {
              "name": "date",
              "value": "yesterday"
            },
            {
              "name": "module",
              "value": "Live"
            },
            {
              "name": "action",
              "value": "indexVisitorLog"
            },
            {
              "name": "disableLink",
              "value": "1"
            },
            {
              "name": "small",
              "value": "1"
            },
            {
              "name": "hideProfileLink",
              "value": "1"
            },
            {
              "name": "period",
              "value": "day"
            },
            {
              "name": "idSite",
              "value": "1"
            }
          ],
          "headersSize": 1037
        },
        "response": {
          "status": 200,
          "statusText": "OK",
          "httpVersion": "HTTP/1.1",
          "headers": [
            {
              "name": "Server",
              "value": "nginx"
            },
            {
              "name": "Date",
              "value": "Tue, 24 Jul 2018 07:35:06 GMT"
            },
            {
              "name": "Content-Type",
              "value": "text/html; charset=utf-8"
            },
            {
              "name": "Transfer-Encoding",
              "value": "chunked"
            },
            {
              "name": "Connection",
              "value": "keep-alive"
            },
            {
              "name": "Vary",
              "value": "Accept-Encoding"
            },
            {
              "name": "Cache-Control",
              "value": "max-age=315360000"
            },
            {
              "name": "Expires",
              "value": "Thu, 31 Dec 2037 23:55:55 GMT"
            },
            {
              "name": "Content-Encoding",
              "value": "gzip"
            }
          ],
          "cookies": [],
          "content": {
            "mimeType": "text/html; charset=utf-8",
            "size": 4163,
            "text": "<div piwik-content-intro>\n    <h2 piwik-enriched-headline>Besucher-Log</h2>\n</div>\n\n\n\n\n    <div class=\"card\">\n    <div class=\"card-content\">\n\n<div class=\"dataTable dataTableVizVisitorLog  \"\n     data-table-type=\"VisitorLog\"\n     data-report=\"Live.getLastVisitsDetails\"\n     data-report-metadata=\"false\"\n     data-props=\"{&quot;show_limit_control&quot;:1,&quot;pivot_by_dimension&quot;:null,&quot;pivot_by_column&quot;:&quot;&quot;,&quot;pivot_dimension_name&quot;:0,&quot;disable_all_rows_filter_limit&quot;:1,&quot;disable_row_actions&quot;:1}\"\n     data-params=\"{&quot;viewDataTable&quot;:&quot;VisitorLog&quot;,&quot;totalRows&quot;:10000000,&quot;smallWidth&quot;:true,&quot;hideProfileLink&quot;:&quot;1&quot;,&quot;pageUrlNotDefined&quot;:&quot;Seiten-URL nicht definiert&quot;,&quot;segment&quot;:&quot;pageUrl==https%3A%2F%2Fwww.becker-mining.com%2Fen%2Fproducts%2Fmincos%2Fnon+flameproof%2Fmonitioring+systems%2Fbelt-rip-scanner&quot;,&quot;date&quot;:&quot;yesterday&quot;,&quot;module&quot;:&quot;Live&quot;,&quot;action&quot;:&quot;getLastVisitsDetails&quot;,&quot;disableLink&quot;:&quot;1&quot;,&quot;small&quot;:&quot;1&quot;,&quot;period&quot;:&quot;day&quot;,&quot;idSite&quot;:&quot;1&quot;,&quot;filter_offset&quot;:0,&quot;filter_limit&quot;:10,&quot;filter_sort_order&quot;:&quot;desc&quot;}\">\n\n    \n    <div class=\"reportDocumentation\">\n        <p>Diese Tabelle zeigt die letzten Besuche innerhalb der ausgewählten Periode. Sie können sehen, wann der Besucher die Seite zuletzt besucht hat, wenn Sie die Maus über das Datum eines Besuches bewegen. <br /> Wenn die gewählte Periode den heutigen Tag enthält, können Sie die Besuche in Echtzeit sehen! <br /> Die angezeigten Daten sind immer live, egal ob und in welchem Intervall Sie den Archivierungs-Cronjob verwenden.</p>            </div>\n\n    <div class=\"dataTableWrapper\">\n                    \n                            <div class=\"pk-emptyDataTable\">\n                                    Es stehen keine Daten für diesen Bericht zur Verfügung.\n                                </div>\n            \n                            <div class=\"dataTableFeatures\">\n    <div class=\"dataTableFooterNavigation\">\n\n        \n        <div class=\"row\">\n            <div class=\"col s9 m9 dataTableControls\">\n                 \n    \n        <a class='dropdown-button dropdownConfigureIcon dataTableAction'\n           href='javascript:;'\n           data-activates='dropdownConfigure308370'><span class=\"icon-configure\"></span></a>\n\n                        \n        \n                    \n                        \n            <a class=\"dataTableAction activateExportSelection\" piwik-report-export\n               report-title=\"Besucher-Log\" request-params=\"&#x5B;&#x5D;\"\n               api-method=\"Live.getLastVisitsDetails\" report-formats=\"&#x7B;&quot;CSV&quot;&#x3A;&quot;CSV&quot;,&quot;TSV&quot;&#x3A;&quot;TSV&#x20;&#x28;Excel&#x29;&quot;,&quot;XML&quot;&#x3A;&quot;XML&quot;,&quot;JSON&quot;&#x3A;&quot;Json&quot;,&quot;PHP&quot;&#x3A;&quot;PHP&quot;,&quot;HTML&quot;&#x3A;&quot;HTML&quot;&#x7D;\"\n               href='javascript:;' title=\"Diese&#x20;Daten&#x20;in&#x20;einem&#x20;anderen&#x20;Format&#x20;exportieren\"\n               ><span class=\"icon-export\"></span></a>\n        \n        \n        \n        \n        <ul id='dropdownConfigure308370' class='dropdown-content tableConfiguration'>\n                                            <li>\n                    <div class=\"configItem dataTableFlatten\"></div>\n                </li>\n                                            </ul>\n                </div>\n\n                    </div>\n\n            </div>\n\n    <span class=\"loadingPiwik\" style=\"display:none;\"><img src=\"plugins/Morpheus/images/loading-blue.gif\"/> Lade Daten ...</span>\n\n    \n</div>\n\n<span class=\"loadingPiwikBelow\" style=\"display:none;\"><img src=\"plugins/Morpheus/images/loading-blue.gif\"/> Lade Daten ...</span>\n\n<div class=\"dataTableSpacer\"></div>\n            \n            <script type=\"text/javascript\" defer=\"defer\">\n    $(document).ready(function () {\n        require('piwik/UI/DataTable').initNewDataTables();\n    });\n</script>\n            </div>\n</div>\n\n    </div></div>\n\n\n"
          },
          "redirectURL": "",
          "headersSize": 284,
          "bodySize": 1914
        },
        "cache": {},
        "timings": {
          "blocked": 0,
          "dns": 0,
          "connect": 0,
          "ssl": 0,
          "send": 0,
          "wait": 80,
          "receive": 0
        },
        "time": 80,
        "_securityState": "secure",
        "serverIPAddress": "94.130.242.97",
        "connection": "443"
      }
    ]
  }
}

As you can see, this is a POST request but

ajaxRequest.addParams(requestParams, 'get');
is a GET request.

@sgiehl
Copy link
Member

sgiehl commented Jul 25, 2018

ajaxRequest.addParams(requestParams, 'get');
only adds GET parameters to the URL. But by default a POST request will be made.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug For errors / faults / flaws / inconsistencies etc.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants