module datalog.qcmlog

Short summary

module mathenjeu.datalog.qcmlog

Helpers to process data from logs.

source on GitHub

Functions

function

truncated documentation

_aggnotnan

_aggnotnan_serie

_duration

_enumerate_processed_row

Converts time, data as dictionary into other data as dictionary.

enumerate_qcmlog

Processes many files of logs produced by application QCMApp.

enumerate_qcmlogdf

Processes many files of logs produced by application QCMApp in dataframe.

Documentation

Helpers to process data from logs.

source on GitHub

mathenjeu.datalog.qcmlog._aggnotnan(values)
mathenjeu.datalog.qcmlog._aggnotnan_serie(values)
mathenjeu.datalog.qcmlog._duration(seq)
mathenjeu.datalog.qcmlog._enumerate_processed_row(rows, data, cache, last_key, set_expected_answers=None)

Converts time, data as dictionary into other data as dictionary.

Paramètres
  • rows – previous rows

  • data – data as dictionaries

  • cache – cache events

  • last_key – last seen key

  • set_expected_answers – set of expected answers, adds a field if one is found

Renvoie

iterator on clean rows

source on GitHub

mathenjeu.datalog.qcmlog.enumerate_qcmlog(files, expected_answers=None)

Processes many files of logs produced by application QCMApp.

Paramètres
  • files – list of filenames

  • expected_answers – expected answers

Renvoie

iterator on observations as dictionary

Example of data it processes:

2018-12-12 17:56:42,833,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"events":["game:simple_french_qcm,qn:2"]}
2018-12-12 17:56:44,270,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"events":["game:simple_french_qcm,qn:2"]}
2018-12-12 17:56:44,349,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"events":["game:simple_french_qcm,qn:2"]}
2018-12-12 17:56:44,458,INFO,[DATA],{"msg":"qcm","session":{"alias":"xavierd"},"game":"simple_french_qcm","qn":"3"}
2018-12-12 17:56:49,427,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"events":["game:simple_french_qcm,qn:3"]}
2018-12-12 17:56:50,817,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"events":["game:simple_french_qcm,qn:3"]}
2018-12-12 17:56:50,864,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"events":["game:simple_french_qcm,qn:3"]}
2018-12-12 17:56:53,302,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"events":["game:simple_french_qcm,qn:3"]}
2018-12-12 17:56:53,333,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"events":["game:simple_french_qcm,qn:3"]}
2018-12-12 17:56:54,208,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"events":["game:simple_french_qcm,qn:3"]}
2018-12-12 17:56:54,239,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"events":["game:simple_french_qcm,qn:3"]}

source on GitHub

mathenjeu.datalog.qcmlog.enumerate_qcmlogdf(files, expected_answers=None)

Processes many files of logs produced by application QCMApp in dataframe.

Paramètres
  • files – list of filenames

  • expected_answers – expected answers

Renvoie

iterator on observations as dictionary

Example of data it processes:

2018-12-12 17:56:42,833,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"client":["N.N.N.N",N]", events":["game:sfq,qn:2"]}
2018-12-12 17:56:44,270,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"client":["N.N.N.N",N]","events":["game:sfq,qn:2"]}
2018-12-12 17:56:44,349,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"client":["N.N.N.N",N]","events":["game:sfq,qn:2"]}
2018-12-12 17:56:44,458,INFO,[DATA],{"msg":"qcm","session":{"alias":"xavierd"},"client":["N.N.N.N",N]","game":"sfq","qn":"3"}
2018-12-12 17:56:49,427,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"client":["N.N.N.N",N]","events":["game:sfq,qn:3"]}
2018-12-12 17:56:50,817,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"client":["N.N.N.N",N]","events":["game:sfq,qn:3"]}
2018-12-12 17:56:50,864,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"client":["N.N.N.N",N]","events":["game:sfq,qn:3"]}
2018-12-12 17:56:53,302,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"client":["N.N.N.N",N]","events":["game:sfq,qn:3"]}
2018-12-12 17:56:53,333,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"client":["N.N.N.N",N]","events":["game:sfq,qn:3"]}
2018-12-12 17:56:54,208,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"client":["N.N.N.N",N]","events":["game:sfq,qn:3"]}
2018-12-12 17:56:54,239,INFO,[DATA],{"msg":"event","session":{"alias":"xavierd"},"client":["N.N.N.N",N]","events":["game:sfq,qn:3"]}

source on GitHub