Enable Edgesense!

We have lost the network. I cannot enable it – Gualter, did you reinstall it? Disabling the menu item until it comes back.

Missing views_json

Edgesense is dependent on views_json, which is not installed. I guess this explains why the module does show up as “off” and the switch button is grayed out.

After installing views_json, we could try enabling it again.

views_datasource provides the required views_json and has been installed and enabled.

The path on the menu was also wrong. It is working again now.

Does not update

The module is back, but it does not update. The dashboard is displaying the JSON generated on the last day before switchover, on Feb 14th.

Now, this might be very naive of me to ask, but this behaviour is compatible with the Python package not being on the server. The package has a separate installation from that of the Drupal module. Are you sure it’s there?

Root user? And more strangeness

The “Network” menu item is only available to admin users. The reason seems to be that it links to https://edgeryders.eu/en/admin/edgesense/dashboard, which is off limits for users. However, if you head there with and admin user account, you are shown the dashboard and the browser now displays https://edgeryders.eu/sites/all/modules/contrib/edgesense/static/dashboard.html. This new link is visible to non-admin users.

Additionally, if I head here: https://edgeryders.eu/en/admin/edgesense/script-run I see that the user which run the script was the root user. I think this is not supposed to happen, because the secondary data file written by the root user is not overwritable by the lower-ranking user running cron.

I changed the menu link to that one, because the previous URL was broken - and somehow I got there only through the admin link. This is changed now.

As for why Edgesense is not running I don’t know - I have not changed anything on the server, nor do know how it is setup. Adding also @Matthias to the assignment.

I can probably…

… pull in a favour from Luca Mearelli and get help. But I’ll need root access to the server. Matt had given me access to the server on EuroHost, but now we are on Ecobytes, right? So I have lost my root access.

No, we are still on Edgeryders host, as in the last call we had it was suggested to first migrate within edgeryders current host. This is why I don’t understand why it stopped working, as nothing was changed at this level.

Found the issue: there is a wget-based Drupal cron on /etc/cron.daily/edgeryders

This is probably what makes edgesense process that, but it uses a cronkey, which probably changed with the site upgrade.

Fixing now.

Oh no, that’s not the problem. Key did not change.

The problem is that cron does not run, message digest is failing:

PHP Fatal error:  Class name must be a valid object or a string in /var/www/clients/client1/web1/web/sites/all/modules/contrib/message_digest/message_digest.module on line 16

No idea why message_digest started giving this error, checking.

Ok, that makes more sense

Just let me know when the cron infrastructure is up and running. If this happens tomorrow, I can ask Luca to help me with re-installing Edgesense on Wednesday, using my root access.

But I am pretty sure that it should not have been the root user running the script. It should have been the web1 user. web1 cannot overwrite root, so the data will not be updated.

After some debugging I found that he was failing with a custom notifier for message_digest I created for edgeryders. After removing it, disabling and re-enabling message_digest, cron runs again and edgesense should update.

fixed permissions

The script/cronjob which run as root is now disabled and also changed the ownership for the parsed files to web1.

Cool!

Great. Let’s see if it updates tomorrow.