OXReportClient

From Open-Xchange

Introduction

Beginning with the release of Open-Xchange Server version 6.18, generating a report every month is mandatory in order to have access to the maintenance updates available in the updates directory on software.open-xchange.com.

You have been blocked already?

Don't panic, you can still access http://software.open-xchange.com/OX6/stable, because that is open for everyone. So install the Report Client from stable instead of updates and once you're done, update to the latest version.

The Open-Xchange Report Client extension of the Open-Xchange Server > 6.12 will enable you to generate and send usage reports of your environment to Open-Xchange. The report will contain information of how many contexts and users have been created in the given Open-Xchange environment. This article will guide you through the installation of the Open-Xchange Report Client. It describes the setup of the software extension itself, and which additional configurations need to be done to execute this extension.

You will find further information at the Open-Xchange Frequent Asked Questions (FAQ)

Install on OX AppSuite

Debian GNU/Linux 11.0

Add the following entry to /etc/apt/sources.list.d/open-xchange.list if not already present:

deb https://software.open-xchange.com/products/updates/DebianBullseye/ /
# if you have a valid maintenance subscription, please uncomment the 
# following and add the ldb account data to the url so that the most recent
# packages get installed
# deb https://[CUSTOMERID:PASSWORD]@software.open-xchange.com/products/updates/updates/DebianBullseye/ /

and run

$ apt-get update
$ apt-get install open-xchange-report-client

Debian GNU/Linux 12.0

Add the following entry to /etc/apt/sources.list.d/open-xchange.list if not already present:

deb https://software.open-xchange.com/products/updates/DebianBookworm/ /
# if you have a valid maintenance subscription, please uncomment the 
# following and add the ldb account data to the url so that the most recent
# packages get installed
# deb https://[CUSTOMERID:PASSWORD]@software.open-xchange.com/products/updates/updates/DebianBookworm/ /

and run

$ apt-get update
$ apt-get install open-xchange-report-client


Configuration

A requirement to execute the Open-Xchange Report Client is to have your Open-Xchange license key stored in one specific file on your Open-Xchange installation. The latest version of our installation guide documentation will automatically enable you to store your license key on disk by using a new oxinstaller command.

If you want to use the report client on an already installed environment you need to store your license key manually on disk. To do so create and edit the following file on your Open-Xchange server:

$ vim /opt/open-xchange/etc/common/licensekeys.properties 

com.openexchange.licensekey.1=PUT_YOUR_OPEN-XCHANGE_LICENSE_KEY_HERE

If you are behind a firewall and the report client needs to be configured using a HTTP proxy, please edit file:

$ vim /opt/open-xchange/etc/groupware/reportclient.properties


After editing this file accordingly to your proxy needs, try to start the report client again.

Using the Report tool

Now as the package has been correctly installed and you provided your license key in the according properties file your are ready to launch the report client to generate a report. By default (if no option is given) the report client will display and send the generated report to an Open-Xchange service on activation.open-xchange.com. Note that only data that is displayed in the console will be transfered to Open-Xchange

activation.open-xchange.com:443

$ /opt/open-xchange/sbin/report

If you want to know which data would be transfered, execute the report client with the option "-d" (display_only). If this option is given to the report client no data will be send:

$ /opt/open-xchange/sbin/report -d

If you don't want to have the report displayed in the console (which might be the case for automated executions of the report client) execute the report client with the option -s (send_only). Now no report will be displayed after the report has been sent to activation.open-xchange.com.

$ /opt/open-xchange/sbin/report -s

List of all options for the Open-Xchange report client:

Usage: report
-h,--help                                         Prints a help text          
   --environment                                  Show info about commandline environment
   --nonl                                         Remove all newlines (\n) from output
-H,--host <host>                                  specifies the host          
-J,--jmxauthuser <jmxauthuser>                    jmx username (required when jmx authentication enabled)
-P,--jmxauthpassword <jmxauthpassword>            jmx username (required when jmx authentication enabled)
-s,--sendonly                                     Send report without displaying it (Disables default)
-d,--displayonly                                  Display report without sending it (Disables default)
-c,--csv                                          Show output as CSV          
-a,--advancedreport                               Run an advanced report (could take some time with a lot of contexts)
-f,--savereport                                   Save the report as JSON String instead of sending it
-b,--showaccesscombination <showaccesscombination>  Show access combination for bitmask


Automatic reports

Creating a cron entry which will automatically execute the report client once a week saves a lot of work. To create this cron entry execute:

$ vim /etc/cron.d/open-xchange_report

0 3 * * 7	open-xchange	/opt/open-xchange/sbin/report -s 1> /dev/null 2>&1

What will be reported using the send method?

The report client will display and / or transfer the following information:

  1. Version number of the Open-Xchange server package
  2. Version number of the Open-Xchange admin package
  3. Total user count
  4. Total context count
  5. Detailed context information: context age, creation date or date of creation, user count, context id
  6. Detailed user information (per context): User access combination flags (which modules have been activated for the users)