Plugin user
Forum Replies Created
-
Issue is now on GitHub
https://github.com/google/site-kit-wp/issues/3606
I believe this can be closed now
INITIAL QUESTION
Does the fact that site 2 is an internationalized domain name (IDN) matter for the Analytics portion of GSK to show the data?
DEFINITE ANSWER
YES! Internationalized Domain Names (IDNs) are in unicode format.
unicodenáme.xxx (unicode) = xn--unicodenme-z4a.xxx (ASCII)
By going through the GSK plugin code I can see that the plugin sends the site url to the Analytics Reporting API v4 in ASCII format from the server variable [SERVER_NAME] or [HTTP_HOST] or siteurl.
As a result of that, no Analytics data is shown by GSK..
SOLUTION
Temporary
Sending site url in unicode shows the Analytics data. So, instead of sending xn--unicodenme-z4a.xxx, send unicodenáme.xxx
I accomplish that as a temporary solution by hardcoding
…\google-site-kit\includes\Modules\Analytics.php around line 613
/* Added by Horacio to make the IDN work on this plugin */ $request['dimensionFilterClauses'][0]->filters[0]->expressions[0] = 'unicodenáme.xxx'; $request['dimensionFilterClauses'][0]->filters[0]->expressions[1] = 'www.unicodenáme.xxx';and voilá, the Analytics data shows fine.
Of course, a permanente solution will depend on Google developers to make Site Kit by Google compatible with IDN web sites. Perhaps by using the viewID instead of the url.
Until that happens, I will have to change the plugin{s code every time it is updated.
Thanks everyone for your time. (The Google folder was deleted)
Is this ticket marked as solved when the plugin is updated to accept IDNs?
We did have some users report issues in the earlier stages of the plugin release however these have since been resolved.
I am not clear if it is the same issue. Internationalized Domain Names (IDNs) enable people around the world to use domain names in local languages and scripts. IDNs are formed using characters from different scripts, such as Arabic, Chinese, Cyrillic or Devanagari. These are encoded by the Unicode standard and used as allowed by relevant IDN protocols.
After going through GSK code the issue with my site is definitely the fact that the name is an IDN.
I have added a new file to the Google folder listing the Server Variables passed to the GSK plugin using the superglobal $_SERVER.
Obviously, I can see a difference how the Server Variables are handled between the Search Console module which shows data and the Analytics module which does not.
Definitely my site is connecting to the to the Site Kit service but is passing the information wrongly.
Thanks J.
folder directories seem to include capital letters
No issues with that
similar hosting environment
I have 2 sites on the same exact environment.
Web site 2 is practically a clone of web site 1 with a different domain name (web site 2 is an IDN, web site 1 is normal characters). More information in attached form.
Everything works fine in both web sites except that Site Kit by Google does not show Analytics data on web site 2 no matter what I do on the server. Web site 2 does show data for Search Console and Page Speed and Experience. Web site 2 shows “Analytics is connected”
On the attached Google form from today please read the Any other supporting information section to get access to a Google folder with screenshots and more information about these 2 sites.
My next step is to troubleshoot Site Kit by Google itself by going to the code to see what happens (or does not happen) before the plugins writes “Analytics Gathering Data
Analytics data is not yet available, please check back later”some cURL or WP CLI commands you can use to test the connection to the Site Kit service
That will help (both of us) to get somewhere. Is the message “Analytics is connected” a response from those commands?
We already know that nothing is stopping the communication with https://analytics.google.com/analytics/web/ which is getting data from both my sites.
We also know that web site 1 is getting responses from the Site Kit service and showing Analytics data.
Nevertheless, web site 2 will not show Analytics data even in troubleshoot mode and with my server firewall off.
1. WordPress version 5.7.2 was reinstalled
2. The Health Check & Troubleshooting 1.4.5 plugin was installed and activated
3. GSK 1.34.1 was enabled.
4. The only plugins running were then GSK and the one mentioned in (2) above.5. The server firewall was disabled
6. Site health was run and the Site Health Info was pasted on a Google form identified with this Support Topic URL (which presumably is attached to this ticket. Please let me know if it is not)
7. On that form dated around Fri, 18 Jun 2021 00:50:01 GMT the is a link under Any other supporting information. That link will open a folder on Google Drive with all the screenshots you have asked in this topic and WILL ask from now on.
In that folder you will find:
a. PDF file with the Site Kit by Google | Site Health Information (same as in the form)
b. A screenshot showing the site Troubleshooting Mode is enabled
c. A screenshot showing GSK with no Analytics data. GSK does show data from Search Console and Page Speed and Experience. On the right site the Developer Tools console is also shown.
d. A screenshot showing Analytics data for that site for the same range (7 days) on https://analytics.google.com/analytics/web/. It can also show data up to April 2021 when the Analytics account was created for that site.
e. A screenshot showing GSK Analytics window with the message “Analytics is connected” but no data
LET ME KNOW IF YOU WANT ME TO TROUBLESHOOT ANYTHING ELSE HERE AND SEND YOU SCREENSHOTS (WHICH WILL BE PUT INSIDE THAT SAME FOLDER ON GOOGLE DRIVE).
I do not know if anything else can be done on my end. Although I have done it before, I followed your instructions to run my site on the bare minimum:
firewall disabled, stable version of WordPress, default theme, no plugins but GSK
Still GSK plugin will not show analytics data when analytics.google.com/analytics/web/ shows thousands of visitors since April.
I have read this forum and noticed that the majority of users who open a case similar to this one either stop writing or report that it “magically” started working the day after. I have not seen a case with the reason why it was not working.
By mentioning some of the responders by name I was looking the right guy who will see the issue and know what the solution is. It was not my idea to break any rules.
I have not had my magic moment after months waiting for GSK to show Analytics data for one of the 2 sites. Because it is not something critical and it is just something nice to have, I just wait out of curiosity to see what is happening.
Another fact is there is another site on the same exact server running the same exact configuration under the same exact firewall rules that does show full Analytics data on GSK with no issues
The only difference between one site and the other is the domain name.
The one that is NOT showing Analytics data is an IDN. So, I will ask now the question which I started this topic 5 days ago:
Does the fact that site 2 is an internationalized domain name (IDN) matter for the Analytics portion of GSK to show the data?
Screenshot of GSK with the same date range from Site Kit Analytics dashboard is attached showing browser’s console on the same screen.
The reason why you get a blank page is explained on that attached form.
Thanks
Okay, responder (respecting then rules), thanks for the support
1. I did shared the information requested using the form.
2. Yes, I am seeing real-time traffic on the analytics.google.com service dashboard
3. I shared the screenshot of the reported traffic on the analytics.google.com normal service dashboard. The link to access the screenshot is in the same form as 1 above.
The plugin user
yes, actually @lizkarkoski pointed me to the right direction.
After 1 month here with nothing, filing the bug myself in GitHub, produced a commitment in less than 6 hours!
Now I now where not to go, and where to go for bugs.
This ticket can now be closed. Thanks for your time
I am not writing my URL here. Should I try support on Github?
I would love to share my private information with you, but not with every bot scanning this page.
Please let me know how I can share with you privately.
I do not see it in https://jetpack.com/contact-support/?rel=support
My PHP error log fills with hundreds of lines repeating the same thing:
ERROR 2
You have an error in your SQL syntax; near ')' at line 3 for query SELECT option_name AS id, option_value AS value FROM xxx_options WHERE option_name IN ( ) made by wp_xmlrpc_server->serve_request, IXR_Server->IXR_Server, IXR_Server->__construct, IXR_Server->serve, IXR_Server->call, IXR_Server->multiCall, IXR_Server->call, Jetpack_XMLRPC_Server->json_api, WPCOM_JSON_API->serve, WPCOM_JSON_API->process_request, Jetpack_JSON_API_Endpoint->callback, Jetpack_JSON_API_Sync_Close_Endpoint->result, Automattic\Jetpack\Sync\Queue->peek_by_id, Automattic\Jetpack\Sync\Queue->fetch_items_by_idThat happens in line 653 of … \wp-content\plugins\jetpack\vendor\automattic\jetpack-sync\src\class-queue.php
$query_with_placeholders = "SELECT option_name AS id, option_value AS value FROM $wpdb->options WHERE option_name IN ( $ids_placeholders )";Reason of this error: $ids_placeholders is null
$ids_placeholders =That line also repeats over and over in my PHP error log all day, everyday.
I am hoping the issue is forwarded to a developer of this plugin who would understand the issue and provide a solution where:
$ids_placeholders is NOT null, or the line is not executed IF it is, or find the reason it has no value.
I am supposed to use this plugin, and report bugs, not debug it!
It has been a month since I first reported these 2 bugs and no solution.
Is Jetpack too busy with those with paid upgrades? Or is Jetpack support this bad over all?
My PHP error log fills with hundreds of lines repeating the same thing:
ERROR 1
substr() expects parameter 1 to be string, array given in ... \jetpack\json-endpoints\jetpack\class.jetpack-json-api-sync-endpoint.php on line 363And the reason for that is because in line 363
if ( substr( $item, 0, 5 ) !== 'jpsq_' ) { return null; }the value of $item is not a string, but an array with this value:
$item = Array ( [concurrent_request_error] => Array ( [0] => There is another request running for the same blog ID ) )That line repeats over and over in my PHP error log all day, everyday.
I am hoping the issue is forwarded to a developer of this plugin who would understand the issue and provide a solution where:
$item is NOT an array with value “There is another request running for the same blog ID”
Kristin S. (Automattic) Aug 3, 2020, 4:50 PM UTC Thanks for letting us know. Have you tried deleting and reinstalling Jetpack? It looks like there is an error in the SQL database that might be cleared up by a fresh reinstall, which would remove any old database entries if there's a corrupt file somewhere. We have a step-by-step guide with screenshots here: https://jetpack.com/support/reconnecting-reinstalling-jetpack/#reinstalling-jetpack You’ve also reached support for customers of our premium products. We recently restructured support so that we now only provide direct email support for those with paid upgrades. We now provide support for the free plugin in the Jetpack Support Forums Jetpack is open source software and this allows the community to benefit from the answers to everyone's questions. With that, I’m going to close this ticket. If you need more help after this, please make a post on the community forums. Many of our team members help out there as well. Thank you for using Jetpack and WordPress and being part of the open source community. Best, Kristin S. - Happiness Engineer WordPress.com | Jetpack | Akismet | VaultPress | Gravatar | WooCommerceYes, the plugin used to have a button to report bugs. I used it, but I never got a solution.
Now, after being kicked out for not being a “paid upgrades” customer, let us continue looking for a solution of this annoying bug.
I followed the instructions to delete jetpack from my server, and reinstalled it.
That made NO difference!
When my site gets this request:
Recent Activity
Time: 7 mins ago — Fri, 31 Jul 20 19:02:39 -0700 — 1596247359.047956 in Unixtime
Secs since last hit: 14.9256URL:
https://example.com/xmlrpc.php?for=jetpack&token=%26qSrUC%25%26%2ALz2fZn%25LsVUsqhhs%40S1T%5E3Y%3A1%3A1×tamp=1596247353&nonce=cS59ifyZln&body-hash=H8wQPGCbAm9vkA6odu807KxTW7Y%3D&signature=k4bt62XhRTJr0QX%2F1WnCpKZhWvU%3DType: Normal request
Referrer:
https://example.com/xmlrpc.php?for=jetpack&token=%26qSrUC%25%26%2ALz2fZn%25LsVUsqhhs%40S1T%5E3Y%3A1%3A1×tamp=1596247353&nonce=cS59ifyZln&body-hash=H8wQPGCbAm9vkA6odu807KxTW7Y%3D&signature=k4bt62XhRTJr0QX%2F1WnCpKZhWvU%3DFull Browser ID: Jetpack by WordPress.com
Location: Richardson, Texas, United States_________________________________________________
The following is posted on my server’s PHP error log:
[31-Jul-2020 19:02:25 America/Los_Angeles] WordPress database error You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 3 for query SELECT option_name AS id, option_value AS value FROM fig_options WHERE option_name IN ( )_________________________________________________
That happens in line 653 of … \wp-content\plugins\jetpack\vendor\automattic\jetpack-sync\src\class-queue.php
$query_with_placeholders = "SELECT option_name AS id, option_value AS value FROM $wpdb->options WHERE option_name IN ( <strong>$ids_placeholders</strong> )";Reason of the error: $ids_placeholders is null
2020-07-31 19:02:25 (Line 653) jetpack $ids_placeholders =
________________________________________________
The following is also posted on my server’s PHP error log:
[31-Jul-2020 19:02:40 America/Los_Angeles] PHP Warning: <strong>substr</strong>() expects parameter 1 to be string, array given in ... \wp-content\plugins\jetpack\json-endpoints\jetpack\class.jetpack-json-api-sync-endpoint.php on line 364 if ( substr( <strong>$item</strong>, 0, 5 ) !== 'jpsq_' ) { return null; }Reason of the error: item is an array, instead of an expected string
2020-07-31 19:02:40 (Line 363) $item = Array ( [concurrent_request_error] => Array ( [0] => There is another request running for the same blog ID ) )_______________________________________________
These lines occur hundreds of time a day filling my error log file, every time Jetpack servers make a xmlrpc.php?for=jetpack&token= request
I hope this information is forwarded to the right person to fix this bug!
Warnings and errors seem to be related to these activities by Jetpack which occur THOUSANDS of times a day!
Recent Activity Time: 2 mins ago -- Tue, 28 Jul 20 10:34:06 -0700 -- 1595957646.960247 in Unixtime Secs since last hit: 4628.3857 URL: ... /xmlrpc.php?for=jetpack&token=%26qSrUC%25%26%2ALz2fZn%25LsVUsqhhs%40S1T%5E3Y%3A1%3A1×tamp=1595957641&nonce=bH3VajEQK4&body-hash=6g%2BIiSLpGLbV23uM5u5M1kdXuyY%3D&signature=EsDPmx4py4bqxiBENtyj%2BdUr%2Bs0%3D Type: Normal request Referrer: ... /xmlrpc.php?for=jetpack&token=%26qSrUC%25%26%2ALz2fZn%25LsVUsqhhs%40S1T%5E3Y%3A1%3A1×tamp=1595957641&nonce=bH3VajEQK4&body-hash=6g%2BIiSLpGLbV23uM5u5M1kdXuyY%3D&signature=EsDPmx4py4bqxiBENtyj%2BdUr%2Bs0%3D Full Browser ID: Jetpack by WordPress.com Location: Los Angeles, California, United States Time: 1 hour 19 mins ago -- Tue, 28 Jul 20 09:16:58 -0700 -- 1595953018.574561 in Unixtime Secs since last hit: 750.9447 URL: ... /xmlrpc.php?for=jetpack&token=%26qSrUC%25%26%2ALz2fZn%25LsVUsqhhs%40S1T%5E3Y%3A1%3A1×tamp=1595953012&nonce=VfvHjSDaG1&body-hash=6g%2BIiSLpGLbV23uM5u5M1kdXuyY%3D&signature=tqShM03tI0FwlMH89SLgwVcxEJA%3D Type: Normal request Referrer: ... /xmlrpc.php?for=jetpack&token=%26qSrUC%25%26%2ALz2fZn%25LsVUsqhhs%40S1T%5E3Y%3A1%3A1×tamp=1595953012&nonce=VfvHjSDaG1&body-hash=6g%2BIiSLpGLbV23uM5u5M1kdXuyY%3D&signature=tqShM03tI0FwlMH89SLgwVcxEJA%3D Full Browser ID: Jetpack by WordPress.com Location: Los Angeles, California, United States