#author("2023-08-29T03:33:38+00:00","default:iseki","iseki")
** Log System [#bef0ca17]
*** messsage_send() [#udfa2614]
    $eventdata = new stdClass();
    $eventdata->name              = 'processed';
    $eventdata->component         = 'mod_apply';
    $eventdata->userfrom          = $fuser;    // id またはオブジェクト
    $eventdata->userto            = $user;     // id またはオブジェクト
    $eventdata->subject           = $postsubject;
    $eventdata->fullmessage       = $posttext;
    $eventdata->fullmessageformat = FORMAT_PLAIN;
    $eventdata->fullmessagehtml   = $posthtml;
    $eventdata->smallmessage      = '';
    $eventdata->notification      = 1;
    //
    message_send($eventdata);

- name の ''processed'' に対応した messageprovidersを db/messages.php に追加

 $messageproviders = array (
 /// Submitting a apply
    'submission' => array (
    ),
 
    'processed' => array (
    )
 );
- moodle のバージョン番号を上げて,アップデート



*** LOG [#h7179fc9]
- http://docs.moodle.org/dev/Migrating_log_access_in_reports
- mdl_logstore_standard_log
 MariaDB [moodle_db]> show columns from mdl_logstore_standard_log;
 +-------------------+--------------+------+-----+---------+----------------+
 | Field             | Type         | Null | Key | Default | Extra          |
 +-------------------+--------------+------+-----+---------+----------------+
 | id                | bigint(10)   | NO   | PRI | NULL    | auto_increment |
 | eventname         | varchar(255) | NO   |     |         |                |
 | component         | varchar(100) | NO   |     |         |                |
 | action            | varchar(100) | NO   |     |         |                |
 | target            | varchar(100) | NO   |     |         |                |
 | objecttable       | varchar(50)  | YES  |     | NULL    |                |
 | objectid          | bigint(10)   | YES  |     | NULL    |                |
 | crud              | varchar(1)   | NO   |     |         |                |
 | edulevel          | tinyint(1)   | NO   |     | NULL    |                |
 | contextid         | bigint(10)   | NO   |     | NULL    |                |
 | contextlevel      | bigint(10)   | NO   |     | NULL    |                |
 | contextinstanceid | bigint(10)   | NO   |     | NULL    |                |
 | userid            | bigint(10)   | NO   | MUL | NULL    |                |
 | courseid          | bigint(10)   | YES  | MUL | NULL    |                |
 | relateduserid     | bigint(10)   | YES  |     | NULL    |                |
 | anonymous         | tinyint(1)   | NO   |     | 0       |                |
 | other             | longtext     | YES  |     | NULL    |                |
 | timecreated       | bigint(10)   | NO   | MUL | NULL    |                |
 | origin            | varchar(10)  | YES  |     | NULL    |                |
 | ip                | varchar(45)  | YES  |     | NULL    |                |
 | realuserid        | bigint(10)   | YES  |     | NULL    |                |
 +-------------------+--------------+------+-----+---------+----------------+
 21 rows in set (0.00 sec)


*** add_to_log() [#x9d24c14]
- 2.6 から deprecated
- event log を使う


*** event log [#ofb93dda]

**** block_autoattend\event\view_log [#a41616c9]
- コンポーネント名: block_autoattend
- ターゲット名:    view
- アクション名:     log

- ファイル名: classes/event/ターゲット名_アクション名.php (この命名規則に従わないとシステムが読んでくれない)
-- 変更後 キャッシュをクリア
-- バージョンをアップする.(説明書にはすると書いてあるがしなくてもよい)


- オブジェクトに値を渡すには,$this->other[] を使用する.


**** イベントオブジェクトの構造  for module [#i18c053f]
 mod_autoattendmod\event\add_to_log Object ( 
    [data:protected] => Array ( 
        [eventname] => \mod_autoattendmod\event\add_to_log 
        [component] => mod_autoattendmod 
        [action] => log 
        [target] => add_to 
        [objecttable] => 
        [objectid] => 
        [crud] => c 
        [edulevel] => 0 
        [contextid] => 416 
        [contextlevel] => 70 
        [contextinstanceid] => 142 
        [userid] => 5 
        [courseid] => 2 
        [relateduserid] => 
        [anonymous] => 0 
        [other] => 
        [timecreated] => 1417150766 
    ) 
    [logextra:protected] => Array ( 
        [origin] => web 
        [ip] => 172.22.1.79 
        [realuserid] => 
    ) 
    [context:protected] => 
    [triggered:core\event\base:private] => 1 
    [dispatched:core\event\base:private] => 1 
    [restored:core\event\base:private] => 1 
    [recordsnapshots:core\event\base:private] => Array ( ) 
 ) 

**** イベントオブジェクトの構造 for block [#l935e5d0]
 block_autoattend\event\view_log ( 
    [data:protected] => Array ( 
        [eventname] => \block_autoattend\event\view_log 
        [component] => block_autoattend 
        [action] => log 
        [target] => view 
        [objecttable] => 
        [objectid] => 
        [crud] => r 
        [edulevel] => 0 
        [contextid] => 15 
        [contextlevel] => 50 
        [contextinstanceid] => 2 
        [userid] => 5 :
        [courseid] => 2 
        [relateduserid] => 
        [anonymous] => 0 
        [other] => 
        [timecreated] => 1417154135 
    )
    [logextra:protected] => 
    [context:protected] => context_course Object ( 
        [_id:protected] => 15 
        [_contextlevel:protected] => 50 
        [_instanceid:protected] => 2 
        [_path:protected] => /1/3/15 
        [_depth:protected] => 3 
    ) 
    [triggered:core\event\base:private] => 
    [dispatched:core\event\base:private] => 
    [restored:core\event\base:private] => 
    [recordsnapshots:core\event\base:private] => Array ( ) 
 )  



**** doc.moodle.org [#p59b57fa]
- add_to_log() has been deprecated, please rewrite your code to the new events API
- http://docs.moodle.org/dev/Migrating_logging_calls_in_plugins

        $event = \mod_wiki\event\page_updated::create(
                array(
                    'context' => $context,
                    'objectid' => $wikipage->id,
                    'relateduserid' => $userid,
                    'other' => array(
                        'newcontent' => $newcontent
                        )
                    ));
        $event->add_record_snapshot('wiki', $wiki);
        $event->add_record_snapshot('wiki_pages', $wikipage);
        $event->add_record_snapshot('wiki_versions', $version);
        $event->trigger();

    $params = array(
        'context' => $context,
        'objectid' => $post->id,
        'other' => array(
            'content' => $post->message,
            'pathnamehashes' => array_keys($files),
            'discussionid' => $post->discussion,
            'triggeredfrom' => $name,
        )
    );
    $event = \mod_forum\event\assessable_uploaded::create($params);
    $event->trigger();

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 ページ一覧 検索 最終更新   ヘルプ   最終更新のRSS