Monitoring openBIS usage

Dear all,

we would like to track the usage of our openBIS instance. Numbers like logins, active users, created objects per week etc.
Anybody who already wrote such a task and is willing to share it?

Best,
Julia

Dear Julia

I have some R code, which is able to parse the usage reports and also generates a number of plots. I am glad to share it.

Best,

Matthias

1 Like

Dear Matthias,

this would be very kind! Should I sent you a private message with my contact information?

Best,
Julia

I think this would be best. I can also upload the code

Best regards

Matthias

2 Likes

Dear Julia,
because the current openBIS usage report cannot be easily triggered remotely and since it reports via email, I wrote my own remote service that can collect usage statistics from a series of instances. Please check it here:

Be aware that this is still work in progress.

2 Likes

Thanks a lot!
I will have a look at it :slight_smile:

Dear all,

we are in the same situation; we want to develop a Dashboard with usage data from multiple openBIS instances.

@bafe How is going with the CLI tool that you mentioned above? Can we take a look, although is not finished?
@matthias.roesslein Would you mind sharing the R code also for me? so I can have an idea of how to do it.
@JuliaD did you managed to track the usage statistics at the end?

Thank you everybody!
All the best,

Carlos M.

1 Like

Hello Carlos,
Please feel free to test my CLI tool. I’m busy with other projects at the moment but I intend to revisit it. IAM happy to accept pull requests if you have any improvements

Having a dashboard with the statistics is indeed a good idea:

What are the things you would like to monitor?

  • System errors? Is this a tool for admins?
  • User work? Is this a tool for lab managers?
3 Likes

Hi Juan,

I think it could be a hybrid monitor: one for admins (info about the system etc), and another one for lab managers (users, experiments, samples, datasets, …)

Hi @juanf ,

a tool would be great, of course, but I would find it very helpful if some values were accessible via a unified API, for example

  • number of open sessions
  • number of active jobs (data upload, download, executed scripts)
  • last login time for a user

Until now I have to search/parse the information from different sources (logfiles, db, python-api).

Best,
Susanne

2 Likes

You can already get most of these informations from the V3 API, but not as a simple API call…
For an example how to do so, you might want to check my example tool I linked above.

We should then split this in two tools, one for admins, another for managers.

For managers:

We have already a task in place that is sent to a list of emails, just put this under the service.properties on the AS. Of course this report is what we find meaningful and may not contain everything everyone wants.

# Maintenance tasks for usage reporting

# Usage reporting class

usage-reporting.class = ch.systemsx.cisd.openbis.generic.server.task.UsageReportingTask

# Time interval of execution and also length report period

usage-reporting.interval = 180 days

# Scheduling plan for task execution. Properties execute-only-once, interval, and start will be ignored if specified.

usage-reporting.run-schedule = 1. 01:15

# User reporting type. Possible values are NONE, ALL, OUTSIDE_GROUP_ONLY. Default: ALL

usage-reporting.user-reporting-type = ALL

# Comma-separated list of spaces to be ignored

usage-reporting.spaces-to-be-ignored =

# Point in time (HH:MM) when to send out the notification (= initial point in time when the first report is generated)

usage-reporting.start = 01:15

# Comma-separated list of e-mail addresses for report sending

usage-reporting.email-addresses = yourmail@ethz.ch

We could of course make this report available though an API, but this is out of scope at this point.

Admins tend to have a job reading the logs looking for errors, we could of course build this into the system. But we have nothing planned like that at this point.

1 Like