Dashboard configuration options
Overview
Dashboard configuration lives in a per-dashboard .json file, which holds both the interface options described here and the tile layout covered by Tile customization.
Every .json file opens with the same warning - “used as a placeholder for as much as possible relevant default application parameters, please do not edit manually”. Take a copy before editing, and expect the dashboard to fail to load its configuration if the file becomes malformed.
The configuration files
There are six .json files, and their names are not what you might expect:
| File | Governs |
|---|---|
config/hd/cmp.json |
The Management Dashboard at multi-application level |
config/hd/app.json |
The Management Dashboard at single-application level |
config/hd/cmp-ISO.json |
The multi-application level, in the ISO-5055 view |
config/hd/app-ISO.json |
The single-application level, in the ISO-5055 view |
config/ed/ed.json |
The Engineering Dashboard |
config/sd/ed.json |
The Security Dashboard |
The Security Dashboard’s file is also called ed.json. The two do not collide because they sit in different folders, but they are easy to confuse - check which folder you are in before editing.
The Management Dashboard is split across two files. An option set in cmp.json affects the portfolio view only; the same option in app.json affects a single application’s view.
See Tile customization for how to locate and edit these files on Windows and on Docker.
After editing, restart the dashboard service and clear your browser cache - the file is cached by the browser as well as read at startup. Tile customization gives the restart command for Windows and for Docker.
Interface options
These appear in the configuration section of ed.json, or at the top level of cmp.json and app.json.
| Option | Shipped value | What it does |
|---|---|---|
defaultLanguage |
English |
The language the dashboard starts in. A user’s own Change Language choice is held in their browser cache, so it reverts to this when that cache is cleared |
customLanguages |
empty | Registers extra locales, as [{'label': 'languageName', 'value': 'localeFolderName'}] |
requestAccess |
false |
Shows a Can’t access link on the login page so a user without credentials can request access |
confirmLogout |
true |
Asks for confirmation on logout. Set false to log out immediately |
violationsCount |
5000 |
The ceiling on violations listed by Show More > All. Above this, All is disabled to protect performance. Must stay above 100 |
timeoutPeriod |
60000 |
The session inactivity period in milliseconds, after which the timeout warning appears |
nbRows |
20 |
Default number of rows in a table, under parameters |
tag |
Low, Moderate, High, Extreme | The action plan priorities, the dialog placeholder text, and the two education actions. tagType renames the Priority column |
filterHealthFactor |
false in ed.json |
See below |
technicalCriteriaForArchitectureModel |
[66070] |
Which technical criterion carries architecture model data |
IndustryStandardsKeys |
per dashboard | Which Business Criteria ids belong to each standard - AIP, CISQ, ISO-5055, and Best-Practices in app.json |
filterHealthFactor
Set to true, only Business Criteria categorised as Health Measures are displayed. Set to false, all Business Criteria are displayed whether or not they are Health Measures.
It ships as false in ed.json, so the Engineering Dashboard shows all Business Criteria out of the box. If you have created custom Business Criteria and cannot see them, check that you have generated a snapshot since creating them rather than reaching for this setting.
The key is absent from cmp.json, app.json and the Security ed.json.
Management Dashboard options
These appear in cmp.json unless noted.
| Option | Shipped value | What it does |
|---|---|---|
appMarq |
true |
Whether Appmarq benchmarking is integrated. Set false to hide the quartile indicator and the Industry and Gap columns |
snapshotThreshold |
1500 |
The snapshot count above which the Trends section stops being displayed |
defaultView |
AIP |
Which view the Default View selector starts on |
persistNavigationFilters |
true |
Whether filter selections survive navigating away and back |
filtering.filterTags |
true |
Whether category and tag filtering is offered |
horizontalScroll |
false |
Whether the tile area scrolls horizontally |
failedRatio |
false |
Whether failed checks are expressed as a ratio |
Evolutions.selectedApplicationCount |
10 |
How many applications are plotted by default in an evolution drill-down |
exportformat |
xlsx in app.json |
The export format. Set to csv for comma-separated output, which uses a semicolon delimiter |
QualityIndicatorResults.ranges |
[2.5, 2.9, 3.2] in cmp.json, [1.6, 2.8, 3.0, 3.4] in app.json |
The grade thresholds that drive tile colouring |
The period option
period defines the time spans offered in the top right corner. Each entry takes a diff and a units of days, months, years or alltime; with alltime, diff is ignored. unitsValue supplies the drop-down text and can be translated per locale, label replaces the generated label, and selected: true marks the span a user lands on.
shift decides what the spans are measured back from. When true, a span ends at the time of the last snapshot, keeping the focus on the most recent data. When false, every span ends at the current date and time.
The shipped cmp.json marks 12 months as selected, but installations have been observed defaulting to 3 months. Check your own period block rather than assuming either.
Report categories
Both ed.json and the Security ed.json carry a reportCategory array defining what the in-dashboard reports feature offers. Each category has an id, a label and a list of reportTemplates, each with a templateLabel shown in the interface and a templateId naming the template.
| Dashboard | Categories |
|---|---|
| Engineering | industryCompliance labelled Standard Compliance Reports, and miscellaneous labelled Miscellaneous Reports |
| Security | securityReports labelled Security Reports, and miscellaneous labelled Miscellaneous Reports |
Removing an entry from reportTemplates takes that report out of the interface, which is how the offered list is trimmed.
Localization
The dashboards ship in English. Adding a language means adding a locale and registering it in customLanguages, after which it appears under Change Language in the user menu.
The text itself is defined per locale in a translation.json file, as key: value pairs:
"Total Quality index": "Total Quality index",
To change wording, edit the value and leave the key alone:
"Total Quality index": "Total Quality Index for company",
To remove a piece of text, leave a space between the quotes:
"Total Quality index": " ",
Editing the English locale’s values is also how default wording is changed without translating anything.
After editing, restart the application, clear the browser cache and reload.
Reports can be generated in German, Italian, Spanish, French and Chinese. Set the dashboard language first, then generate the report - see In-dashboard reports.