Every now and then I see a line in watchdogs like this one:
Type No entry
Message admin/reports/system_status/99999999999
Severity Warning
Hostname 91.212.186.35
Maybe $items['admin/reports/system_status'] should read: $items['admin/reports/system_status/%']

Comments

promes’s picture

In my issue I put a wrong maybe conclusion. The token is given to the function.
I investigated the source and found the reason. In function system_status_access_callback($token = FALSE) the first test results always in FALSE.

  if ((variable_get('system_status_need_protect_token', 0) == 1 || variable_get('system_status_service_allow_drupalstatus', 1) == 1) && $token !== variable_get('system_status_token', "")) {
    return FALSE;
  }

The content of the variable: system_status_token is unequal to the passed $token.
Both other variables are not defined in table variable.

sam hermans’s picture

Hi,

Could you provide me with the site id you are having these issues with ? For your convenience i have created a debug url that show's the corresponding ID's.

https://www.drupalstatus.org/account/whoami

promes’s picture

Hi Sam,

One of the sites with this message has ID 9947.
Good luck.

sam hermans’s picture

Hmm, i just did a manual fetch of http://yoururl/admin/reports/system_status/
and this seems to work fine.

Since the ip reported in watchdog is the actual ip of the fetcher that generate the reports i assume that the error is here on my end.

Just to be sure, how often did this appear ? You site is scanned every hour or so.

I added an additional check so it should not happen anymore.

sam hermans’s picture

Assigned: Unassigned » sam hermans
Issue summary: View changes
Status: Active » Closed (works as designed)
promes’s picture

I removed the first if statement in function system_status_access_callback() (see #1) in all D7 sites to get rid of the messages last november. So I don't know at the moment how often I get the error.
I replaced in all D7 sites the module file with the original. When I get the messages again I will report back.

What do you mean with: "I added an additional check so it should not happen anymore."? In the host modules? The is no dev with this change...

promes’s picture

Status: Closed (works as designed) » Active
sam hermans’s picture

Well, i do not agree that the issue is related to the if statement, i think the issue came from the fetcher on my side(where i made a code change).

  if ((variable_get('system_status_need_protect_token', 0) == 1 || variable_get('system_status_service_allow_drupalstatus', 1) == 1) && $token !== variable_get('system_status_token', "")) {
    return FALSE;
  }

1) If the system_status_need_protect_token == 1 -> REJECT
OR
2) if system_status_service_allow_drupalstatus is TRUE AND the $token does not match system_status_token REJECT.

The system_status_need_protect_token is something from one of the very first releases, and should/will be removed in future updates. On new/recent installations it should allways return 0 and return FALSE.

If it's really true that the content of system_status_token is unequal to the passed $token you should try to re-add your site... but it doesnt seem to be that way. (i have nr66210K6 in my database as your token)

sam hermans’s picture

PS: The code is for if someone should want to uncomment everything in system_status.admin.inc so they can use the module with their own backends.

sam hermans’s picture

Status: Active » Closed (outdated)