Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Info

Coming in Rogo 7.1 a command line replacement (and extension of the Clear Old Logs functionality)

Scope

  1. Identifies any user that has a Left or Graduate role
  2. For the identified users, archives formative assessment logs
  3. For the identified users, archives progress test logs
  4. Removes any LTI associations for the users
  5. Resets users' passwords to [[blank]], preventing logon

Archive Script

php cli/archive.php -h
Rogo archive script options

-h, --help Display help

-a, --account, Rogo account to log process against [Required]

-l, --ldap, Rogo is using ldap accounts [Optional]

-r, --archive, Archive data to a seperate database [Optional]

...

archive.php can be run manually or you could get it to run regularly by adding a script to launch it from corn cron i.e.

Code Block
languagebash
titlearchive.sh
#!/bin/bash

TIMESTAMP=$(date +"%Y-%m-%d-%H:%M:%S")

if [ ! -f /rogocron/archive.lock ]
           then
                   touch /rogocron/archive.lock
                   cd /var/www/html/cli
                   php archive.php -a admin > /rogolog/archive/archive.log.${TIMESTAMP}
                   rm -rf /rogocron/archive.lock
fi

Seperate Archive Database

If you wish to store the archive data on a seperate database you will need to create it:

...

Code Block
languagesql
CREATE USER 'rogo_archive'@'database host' IDENTIFIED BY 'a password';

GRANT SELECT, INSERT ON rogo_archive.log0_deleted TO 'rogo_archive'@'database host';

GRANT SELECT, INSERT ON rogo_archive.log1_deleted TO 'rogo_archive'@'database host';

GRANT SELECT, INSERT ON rogo_archive.log_metadata_deleted TO 'rogo_archive'@'database host';

FLUSH PRIVILEGES;

The archive database confiruation configuration will need to be added to your config file in order for archive.php to pick it up.

Code Block
languagephp
titleconfig.inc.php
  $cfg_archivedb_username = 'rogo_archive';
  $cfg_archivedb_passwd   = 'a<a passwordpassword>';
  $cfg_archivedb_database = 'rogo_archive';
  $cfg_archivedb_host = 'database<database hosthost>';
  $cfg_archivedb_port = 'database<database portport>';
  $cfg_archivedb_charset = 'utf8mb4';

...