Warning
There are known security vulnerabilities in Open XDMoD versions ≤11.0.2. We strongly encourage upgrading immediately to the latest version of Open XDMoD, 11.0.3, which contains fixes for these vulnerabilities.
To upgrade version 9.0 to 11.0.3, you will first need to upgrade to version 9.5.0, then upgrade to version 10.0.3, then upgrade to version 10.5.1, then upgrade to version 11.0.3.
If you cannot upgrade immediately, you can follow the instructions below to manually patch your installation as a temporary workaround before upgrading later.
Workaround instructions
- First, make sure you are on the correct web page for your version of Open XDMoD. The web page you are on now is for version 9.0. Other versions' pages are linked below:
- Download the patch file for your version:
- Copy the patch file to your Open XDMoD web server.
-
Make sure you have the
patchcommand installed; it can be installed withdnf install patch. -
Apply the patch by running the command below, replacing
[PATH_TO_XDMOD_SHARE_DIR]with the path to the share directory (/usr/share/xdmodfor RPM-based installs,/opt/xdmod/shareor another location for source code installs) and replacing[PATH_TO_PATCH_FILE]with the path to the patch file.# patch -p1 -d [PATH_TO_XDMOD_SHARE_DIR] < [PATH_TO_PATCH_FILE]
NOTE: A previous version of this web page instructed you to manually patch the fileclasses/Realm/GroupBy.php. If you did so, you will see the following prompt:patching file classes/Realm/GroupBy.php
Make sure to choose
Reversed (or previously applied) patch detected! Assume -R? [n]n, and when it asks "Apply anyway? [n]", choosenagain. - Upgrade to the latest version of Open XDMoD as soon as you can.
To change the default charts for all users you need to update the
roles.json file (/etc/xdmod/roles.json if you installed the RPM or
PREFIX/etc/roles.json if you did a manual install) and change the JSON
for the charts. Since it is not obvious how to do this, I suggest
looking at the JSON created from the Metric Explorer for the changes you
need to make in roles.json.
First, log into the portal and create the desired charts using the Metric Explorer. You can add this chart to the summary page, but only for that user, by checking “Show in Summary Tab”.
After saving the chart, select from the table UserProfiles in the
database moddb.
mysql> SELECT * FROM moddb.UserProfiles;
This will show the user profile data for all users including the chart
JSON serialized by PHP. If you are unsure of your user_id, check the
Users table.
mysql> SELECT id, username FROM moddb.Users;
Next you’ll need to deserialize the data then examine the JSON. Copy this code into a file and run it with the data from your user profile:
<?php
$data = 'a:1:{....'; // Copy your data into this variable.
$profile = unserialize($data);
$queries = json_decode($profile['queries'], true);
foreach ($queries as $name => $query) {
echo $name, ":\n";
echo $query['config'], "\n\n";
}
This will output the JSON for each chart saved for the user the data was
copied from. Find the chart that you want to add to the default summary
page and copy it into summary_charts section of roles.json. Add the
JSON object list after the name of the chart.
"summary_charts": [
{
...
},
{
...
},
...
]
You should also add a title to JSON for the chart that will be displayed on the summary page.
"summary_charts": [
{
"title": "Chart Title",
...
},
...
]
Note that it is possible to have a different set of charts for different roles, but the default configuration uses a single set of charts for all roles.


