アクセスの無いコースの検索

アクセスの無いコースの検索

by Katsunori Mizuno -
Number of replies: 6

1年以上アクセスの無いコースを検索する良い方法はありますか?
また,そのコースのカテゴリを一括で変更する良い方法はありますか?

目的は,使用されていないコースを例えば「ごみ箱」カテゴリに集めて一括で削除したいのです。

よろしくお願いします。

Average of ratings: -
In reply to Katsunori Mizuno

Re: アクセスの無いコースの検索

by Mitsuhiro Yoshida -
Picture of Developers Picture of Particularly helpful Moodlers Picture of Translators

非標準プラグインの「Course Archiver」をお使いになってはいかがでしょうか。

[Moodle plugins directory: Course Archiver]
https://moodle.org/plugins/tool_coursearchiver

「1年以上アクセスの無いコースを検索する」ことは難しいと思いますが、例えば「Accessed Before / After」セクションの「Last accessed before」で1年以上の日付を指定することにより、1年以内に作成されたコースは抽出から除外されると思います。

また、検索結果に表示されたコースを選択して「非表示 (Hide Courses)」「削除 (Delete Courses)」できます。

Moodle 3.8.2+ (Build: 20200424) で動作確認しましたが、「Accessed Before / After」セクション」で「Last accessed before」「Last accessed after」両方のオプションを選択した場合、「ERROR: Incorrect number of query parameters. Expected 4, got 3.」エラーが表示されるようです。

Attachment Course Archiver.png
Average of ratings: お役立ち度: ★★★★★★★ (1)
In reply to Mitsuhiro Yoshida

Re: アクセスの無いコースの検索

by Katsunori Mizuno -
ありがとうございます。
試してみます。
In reply to Katsunori Mizuno

Re: アクセスの無いコースの検索

by Katsunori Mizuno -
Course Archiver で目的のことが概ね達成できました。ありがとうございました。
ただ,コースを削除する際に,タイムアウトになってしまい削除できないコースがいくつかあって困っています。
CentOS7 + Nginx + php-fpm に Moodle 3.8 入れています。Niginx + php-fpm のタイムアウトを 3分, 5分, 10分, 20分 と徐々に増やしながら,コースの削除を行っているのですが,どうしても削除できないコースが発生しています。
2012年~2016年頃に利用されていたコースなのですが,一部はコースリセットを実施した後,コース削除することで削除できたのですが,リセットしても削除でタイムアウトしてしまうコースがあります。
削除するために何か良い方法はないでしょうか?

よろしくお願いします。
In reply to Katsunori Mizuno

Re: アクセスの無いコースの検索

by Mitsuhiro Yoshida -
Picture of Developers Picture of Particularly helpful Moodlers Picture of Translators

可能でしたら、Moodleのホームディレクトリ内の「.htaccess」ファイルの先頭に以下のようなPHPディレクティブの記述を一時的に追加されてはいかがでしょうか。

php_value memory_limit 1024M

In reply to Mitsuhiro Yoshida

Re: アクセスの無いコースの検索

by Adam Jenkins -
Picture of Particularly helpful Moodlers
.htaccessを編集しても効果はないはずです。何故ならば、Apache2ではなく,Nginxで動かしているからです。

phpfpmのiniファイルで変更をやるか、Mooshなどによってタイムアウト制限無い状況でするしか無いかなと思います。

他のやり方だと、削除前にコースリセットをして、そして削除してみればどうですか。リセットにタイムアウトなしの方法の一つは以下のプラグインを使ったやり方です。

https://github.com/adamjenkins/moodle-tool_bulkreset

Good luck!
Average of ratings: お役立ち度: ★★★★★★★ (1)
In reply to Adam Jenkins

Re: アクセスの無いコースの検索

by Katsunori Mizuno -
アドバイスありがとうございます。
Moodle専用サーバなので php.ini で memory_limit 1024M に変更しました。また,Nginx, php-fpm, php のタイムアウトを 60分 に増やしてから,コース削除を実施したところ無事削除することができました。

ありがとうございました。
Average of ratings: お役立ち度: ★★★★★★★ (2)