|
以降の手順を実行する前に初期設定を行うこと。 |
Moodleの学習ログ分析基盤を構築する。
docker compose up -d --no-build // (1)
-
イメージをビルドする場合は
--no-build
の代わりに--build
オプションを指定
項目 |
名称 |
コンテナ名 |
学習管理システム |
Moodle(Web) |
moodle |
Moodle(DB) |
moodle-db |
|
ステートメント変換 |
xAPIステートメント変換 |
moodle-xapi |
Caliperステートメント変換 |
moodle-caliper |
|
Caliperステートメント変換(DB) |
caliper-log-db |
|
Learning Analytics DB |
learning-analytics-db |
|
学習活動のデータストア |
Learning Locker(Web) |
learninglocker |
Learning Locker(DB) |
learninglocker-mongo |
|
learninglocker-redis |
||
OpenLRW(Web) |
openlrw |
|
OpenLRW(DB) |
openlrw-mongo |
|
分析システム |
Superset(Web) |
superset |
Superset(DB) |
superset-db |
|
JupyterHub(Web/DB) |
jupyterhub |
graph TB
ST([生徒]) -- 学習活動 --> M[Moodle]
M -. 学習ログ .-> X[[xAPI変換]] -- xAPIステートメント --> L[(Learning Locker)]
M -. 学習ログ .-> C[[Caliper変換]] -- Caliperステートメント --> O[(OpenLRW)]
L --> S[Superset]
L --> J[JupyterHub]
O --> S
O --> J
S -- 可視化 --> T([教師])
J -- 分析結果 --> T
J -. 分析結果 .-> S
T == 教育方法とコース設計の改善 ==> M
M == 学習体験と成果の向上 ==> ST
Moodle( http://localhost:8000 )で学習活動を行う。
スクリプトの設定ファイルを編集する。
const config = {
…
LRS: {
...
client: {
key: '<xapi-store-client-key>', // (1)
secret: '<xapi-store-client-secret>' // (1)
},
…
-
クライアントの設定 で確認したLRSのクライアント情報を設定
docker compose up -d moodle-xapi --force-recreate
学習ログをxAPIステートメントに変換する。
docker exec moodle-xapi npm start
Learning Lockerにステートメントが登録されていることを確認する。
💡
|
変換が完了したログの件数を取得する場合は以下のコマンドを実行する。 docker exec learning-analytics-db \ psql -U learning_analytics learning_analytics \ -c "SELECT count(*) FROM xapi_records_processed;" ログを再変換したい場合は、以下のコマンドで変換処理の実行履歴を削除する。 docker exec learning-analytics-db \ psql -U learning_analytics learning_analytics \ -c "DELETE FROM xapi_records_processed;" |
OpenLRWから取得したAPIキー( mongoOrg.apiKey
)を lrw.php
に設定する。
OPENLRW_DATABASE=caliper // (1) OPENLRW_USERNAME=caliper // (1) OPENLRW_PASSWORD=caliper // (1) API_KEY=$( docker exec openlrw-mongo \ mongo --quiet ${OPENLRW_DATABASE} \ -u ${OPENLRW_USERNAME} \ -p ${OPENLRW_PASSWORD} \ --eval 'db.mongoOrg.findOne({"org.name": "DEFAULT_ORG"}, {_id:0,apiKey:1}).apiKey' ) cat <<EOF > ./caliper/config/lrw.php <?php return [ "tenants" => [ "default" => "${API_KEY}" ] ]; EOF
-
OpenLRWの設定 を参照
💡
|
操作方法の詳細は ユーザガイド - Creating Charts and Dashboards を参照すること。 |
Superset( http://localhost:8088 )にAdminユーザでログインする。
[Data] > [Datasets]
から xapi_statements
を選択する。
「DATA」および「CUSTOMIZE」タブからチャートの設定を行い、「CREATE CHART」でステートメントを可視化する。
大項目 |
小項目 |
設定値 |
Visualization Type |
|
|
Time |
TIME COLUMN |
|
Query |
DIMENSIONS |
|
METRIC |
|
JupyterHub( http://localhost:8001 )に jupyter
ユーザ(パスワード: jupyter
)でログインする。