Libraryless. Click here for Pure Java version (1627L/10K/34K).
!752 static class Event { long startTime, duration; S question, answer; S botID; } static PersistentLog<Event> data; p { data = new PersistentLog("data.log"); } synchronized answer { if "avg processing time" { if (empty(data)) ret "No data yet"; long avg = round(getAverage(data, "duration")); ret avg + " ms per question (" + l(data) + " requests counted)"; } if (match("clear avg processing time", s) && getUserName() != null) { data.clear(); ret "OK, log cleared."; } } static synchronized S answerPriv(S s) { new Matches m; if (match("log timing *", s, m)) { new Event e; copyFields(safeUnstructure(m.unq(0)), e); // mandatory fields assertTrue(e.startTime != 0); assertTrue(e.duration >= 0); assertTrue(!empty(e.question)); data.add(e); ret "OK, logged as item " + l(data); } ret null; }
download show line numbers debug dex old transpilations
Travelled to 14 computer(s): aoiabmzegqzx, bhatertpkbcr, cbybwowwnfue, cfunsshuasjs, gwrvuhgaqvyk, ishqpsrjomds, lpdgvwnxivlt, mqqgnosmbjvj, onxytkatvevr, pyentgdyhuwx, pzhvpgtvlbxg, tslmcundralx, tvejysmllsmz, vouqrxazstgt
No comments. add comment
| Snippet ID: | #1002174 | 
| Snippet name: | avg processing time bot | 
| Eternal ID of this version: | #1002174/1 | 
| Text MD5: | dbd75303862a6d8b663f2e09b2e5d6f6 | 
| Transpilation MD5: | 061ffe3f45e9c11725cc1b1a4ef4c740 | 
| Author: | stefan | 
| Category: | javax | 
| Type: | JavaX source code | 
| Public (visible to everyone): | Yes | 
| Archived (hidden from active list): | No | 
| Created/modified: | 2016-01-19 18:02:41 | 
| Source code size: | 930 bytes / 43 lines | 
| Pitched / IR pitched: | No / No | 
| Views / Downloads: | 912 / 2059 | 
| Referenced in: | [show references] |