Update

Due to a short software update, docu.ilias.de will be unavailable from 14:45 CEST for approximately 10 minutes.

25. Internationale ILIAS-Konferenz

Feature Wiki

Information about planned and released features

Tabs

Streamline Logging

1 Initial Problem

Logging as a component is due a bit of spring cleaning. In particular, It has accumulated a few small features that should be removed: the option "Log Memory Usage" hasn't worked for a number of releases, "Browser Console Log" is a worrying potential point of failure from a security standpoint, and "Caching" doesn't seem to be used very widely.

What makes this clean up particularly necessary now is the Component revision project: Logging is a dependency of many of the components in ILIAS, so any dependency of Logging makes the new bootstrapping mechanism more complicated. The Logging component should thus be kept as lean as possible.

2 Conceptual Summary

  • Some optional features of logging in ILIAS will be abandoned:
    • The option "Browser Console Log" will be removed.
    • The option "Log Memory Usage" will be removed.
    • The option "Caching" will be removed.
  • In the `ilias.ini.php`, the fields "path" and "file" in the category "[log]" will be merged to just a single field "file".
  • The option to configure the default "Log Level" will be removed from the UI, instead the already existing field "level" in the `ilias.ini.php` will be used.
  • The root logger will be removed, since all code in ILIAS belongs to a component anyways. The separately configurable log level for the root logger will be removed with it.

3 User Interface Modifications

3.1 List of Affected Views

  • Administration > System Settings and Maintenance > Logging > Logging Settings
  • Administration > System Settings and Maintenance > Logging > Components

3.2 User Interface Details

All the settings on the subtab 'Logging Settings' of the Logging administration will be removed, so the whole subtab will be removed with them.

Because there will be no configurable log level for "Root" anymore, that row will be removed from the "Components" table.

3.3 New User Interface Concepts

No new UI.

3.4 Accessibility Implications

No accessibility implications.

4 Additional Information

4.1 Involved Authorities

If this request is related to multiple components, please list both authorities for all related components.

4.2 Technical Aspects

As part of this streamlining, the Logging component will be refactored, with the explicit aim of bringing Logging in line with the component revision: dependency management will be cleaned up, and lazy initialization mechanisms will be implemented where appropriate. Logging needs to work with the new bootstrapping mechanism without much friction.

Further, the Logger interface will be made compliant with PSR-3.

Necessary changes to the `ilias.ini.php` of pre-existing ILIAS installations will be made via the setup. "path" will be prepended to "file" and then removed. If no "level" is set, the field will be inserted with the corresponding value from the `settings` database table.

We will try to replace the existing usages of the root logger via a PR. If there is any usage that can't be clearly assigned to a single component, we will raise the issue with the JF.

4.3 Privacy

No personal data is processed.

4.4 Security

Stripping down the feature set of Logging will reduce the surface area of the component, which is helpful for security in general. In particular, abandoning browser logging will remove a potential point of failure.

4.5 Contact

Person to be contacted in case of questions about the feature or for funding offers:  Schmitz, Tim [tschmitz]

4.6 Funding

Funding status and funding parties are listed in the block 'Status of Feature' in the right column of this page.

If you are interested to give funding for this feature, please get into contact with the person mentioned above as 'Contact'.

5 Discussion

6 Implementation

Feature has been implemented by {Please add related profile link of this person}

6.1 Description and Screenshots

{ Description of the final implementation and screenshots if possible. }

6.2 Test Cases

Test cases completed at {date} by {user}

  • {Test case number linked to Testrail} : {test case title}

6.3 Privacy

Information in privacy.md of component: updated at {date} by {user} | no change required

6.4 Approval

Approved at {date} by {user}.

Last edited: 20. Jul 2026, 10:33, Schmitz, Tim [tschmitz]