def test_put_extras_to_log(self): extra = {'extra_data': 'Lorem Ipsum'} predictor = pred.with_logging(stub_predictor, logger=self, extra=extra) predictor([1, 2, 3, 4]) data = json.loads(self.logged_message) self.assertEquals(extra, data.get('extra'))
def test_log_prediction_results(self): sample = [1, 2, 3, 4] predictor = pred.with_logging(stub_predictor, logger=self) predictor(sample) data = json.loads(self.logged_message) self.assertEqual(sample, data.get('sample'), "Sample data is recorded") self.assertEqual(42, data.get('label'), "Label value is provided") self.assertTrue('performance_time' in data, "Performance data is recorded")
import iris.model as model from iris.predictor import with_logging, make from iris.server import app mdl = model.load() app.predictor = with_logging(make(mdl), extra={'model_ctime': mdl.timestamp}) if __name__ == '__main__': app.run(debug=True, host='0.0.0.0', port=8080)
def test_pass_result_label_up(self): predictor = pred.with_logging(stub_predictor, logger=self) label = predictor([1, 2, 3, 4]) self.assertEqual(42, label)