Thor77
7077446627
Add test for Client.nick-property
2017-09-08 15:39:39 +02:00
Thor77
3acf282470
Don't drop current nick in prepare_clients
...
because that's already handled in the Client.nick-property now
2017-09-08 15:39:39 +02:00
Thor77
c2fb6aa6c1
Handle set_nick event-action with .nick-property
2017-09-08 15:39:39 +02:00
Thor77
088d905196
Convert Client.nick into property
...
to add previous nick to .nick_history on set
2017-09-08 15:39:39 +02:00
Thor77
a084101ced
Add Clients.apply_events
...
to apply events to a Clients-collection
2017-09-08 15:39:39 +02:00
Thor77
da2b773bf6
Add tsstats/event.py for easy event-initialization
2017-09-08 15:39:39 +02:00
Thor77
08b4e06f10
Refactor and simplify log-parsing
...
* _parse_line parses one line at a time for simplified testing
and return a list of event.Event's instead of applying changes directly
to a Clients-obj
* parse_log just bundles the logs (using _bundle_logs), opens them,
parses them (using _parse_line) and applies returned events to a
Clients-obj in the correct order
With these changes some sort of caching is possible because events are
not bound to a specific client-object and are easily sortable due to
their attached timestamp.
2017-09-08 15:39:39 +02:00
Thor77
20d40c8890
Add string-representation for Clients
...
to simplify debug-output
2017-09-08 15:39:39 +02:00
Thor77
caff246f9a
Don't raise InvalidLog
...
because there's nothing you can do about it anyways, so there's no need
to stop.
2017-09-08 14:12:48 +02:00
Thor77
edff1e956d
Optionally Pendulum.diff_for_humans instead of frmttime
...
for relative last seen time (default)
* introduce --lastseenabsolute
* introduce tsstats.template.render_servers(lastseen_relative=True)
2017-07-07 14:23:10 +02:00
Thor77
65a8379261
Use pendulum instead of plain datetime
...
because it is more intuitive to use and doesn't require the
tz_aware_datetime-workaround.
2017-07-07 14:22:24 +02:00
Thor77
3d469ce28c
Sort imports
2017-06-02 23:34:33 +02:00
Thor77
11acf9f9b6
Add space between identifier and nick
...
mainly used in debug mode
2017-05-15 22:50:05 +02:00
Thor77
992d35ec87
Fix UnicodeEncodeError in debug mode with Python 2
2017-05-15 22:49:18 +02:00
Thor77
f209573d04
Fix Clients.__add__ not using identmap
2017-05-14 23:28:59 +02:00
Thor77
a4c04e34c8
Close log files after parsing
2017-05-11 11:32:11 +02:00
Thor77
8299c73eb9
Move output-fixture to confest.py and yield path
...
* Modify test_log and test_template to use these changes
2017-04-28 23:27:05 +02:00
Thor77
97d58254b3
Remove unnecessary variable-declaration
...
possibly leading to faster access-time
2017-03-31 22:39:57 +02:00
Thor77
8d18b9c4ae
Fix not using defined variable for match-access
...
possibly leading to slower access-times
2017-03-31 22:21:54 +02:00
Thor77
1bc555d66c
Add IdentMap-lookup for new clients
...
added to clients-collection during log-parsing
Fix #18
2017-03-30 20:10:08 +02:00
Thor77
683f9b984a
Add testcase for wrong identifier with identmap
...
If a client connects with a secondary identifier first,
this one is used as the identifier for the Client-object instead of the
primary one.
2017-03-29 12:45:35 +02:00
Thor77
270b20d385
Fix E501 (line too long)
2017-03-24 23:19:48 +01:00
Thor77
0081ac9939
Log parse time of individual logs
2017-03-24 23:18:26 +01:00
Thor77
e4212f28fb
Log total execution time to info
2017-03-24 23:17:58 +01:00
Matthew
a83d6de253
Add ability to pass a directory for --log option ( #17 )
...
If you pass a directory, it will now tack a '*.log' glob on the end of
the path to automatically use all log files inside this directory.
2017-03-08 22:54:07 +01:00
Thor77
aaf5f2b851
Convert filter to list
...
because filters are (non-subscriptable) objects in py3
2017-03-04 00:02:41 +01:00
Thor77
a694a2bc58
Refactor test_onlinetime
...
to require only one iteration and simplify testing
2017-03-03 23:59:24 +01:00
Thor77
cd01eb433a
Use hyperlinks instead of onclick-events
...
to link to positions.
Disabled color-change and text-decoration to keep a clean and consisten
look.
2017-02-27 22:16:16 +01:00
Thor77
6c35aed767
Only log to file if not logging to stdout
2017-02-27 13:37:05 +01:00
Thor77
8f49c3e95d
Add debugstdout flag/config-directive
...
to enable debug logging to stdout
Fix #15
2017-02-27 13:37:04 +01:00
Thor77
0033ce186f
Move logger-setup to tsstats.logger
...
and handlers are now attached as desired in __main__.cli
2017-02-27 13:37:00 +01:00
Thor77
2753f548fe
Test disconnect on server-stop
2017-02-23 21:51:42 +01:00
Thor77
962fd486af
Test reading config from disk again
2017-02-23 21:38:59 +01:00
Thor77
709c573b65
Refactor config-tests
...
by just testing the return-value of tsstats.config.load instead of
writing and reading a config-file from disk as there's absolutely no
need to test that as it's just basic ConfigParser-functionality
2017-02-22 22:00:09 +01:00
Thor77
5e19e38965
Fix E501 (line too long)
2017-02-19 17:17:14 +01:00
Matthew
5968dc31dd
Support for a nicer structure for ID maps ( #12 )
...
This adds support for a more expressive (albeit more verbose) IdentMap
structure. It makes it easier to annotate the structure with additional
data (such as names to associate with the IDs), to assist with
maintaining the IdentMap.
2017-02-18 14:58:23 +01:00
Thor77
2816c2ecfa
Merge pull request #13 from djmattyg007/mobile_improvements
...
Improve presentation on mobile devices
2017-02-18 14:19:52 +01:00
Thor77
4adfb9cfc1
Make all datetime-objects timezone-aware
...
Because the tool is using utc-timestamps everywhere, this emphasizes
this fact (by default) in the output.
If you don't want timezones behind each datetime in your output, just
remove the "%Z" from the `datetimeformat`.
Fix #9
2017-02-16 22:44:51 +01:00
Matthew Gamble
531f5c57d2
Improve presentation at mobile
...
- Add custom hint--medium--xs style, to make the tooltips wrap neatly
- Add meta viewport tag
2017-02-16 18:17:29 +11:00
Thor77
d5c3f312df
Merge pull request #8 from djmattyg007/template_fixes
...
Fix closing header tag
2017-02-14 22:39:40 +01:00
Thor77
ab96dd42f9
Merge pull request #5 from djmattyg007/readme_update
...
Update readme to emphasise fact that no ServerQuery account is required
2017-02-14 22:38:26 +01:00
Matthew Gamble
3824eeac10
Fix closing header tag
2017-02-15 08:36:01 +11:00
Matthew Gamble
69557a94a6
Update CLI help text to match readme
2017-02-15 08:33:17 +11:00
Thor77
ae35a73a64
Merge pull request #7 from djmattyg007/template_security
...
* Add rel=noopener to the github link to prevent window.opener attacks.
* Add no-referrer referrer policy to prevent leakage of sensitive info such as private domain names.
2017-02-14 16:07:37 +01:00
Matthew Gamble
96156ca622
Add no-referrer referrer policy to prevent leakage of sensitive info
...
This prevents Referer headers from being sent when requesting any
external assets, and when clicking on any offsite links. This includes
the github link in the footer. This helps to prevent the leakage of
sensitive details, such as private domain names.
2017-02-14 18:17:35 +11:00
Matthew Gamble
e94e117242
Add rel=noopener to prevent window.opener attacks
...
This is highly unlikely, but it never hurts to be cautious.
2017-02-14 18:14:59 +11:00
Matthew Gamble
13ad296459
Add doctype to main template
2017-02-14 18:11:35 +11:00
Thor77
72c1eb78f8
Use fixture for providing clients
...
for test_client and test_ident_map
2017-02-12 21:38:29 +01:00
Thor77
22f6402bce
Add nick-history functionality
...
hover a nickname to show previous nicks
2017-02-11 22:14:34 +01:00
Thor77
6366d3ebb1
Show last-seen hint only in Onlinetime-section
...
currently by filtering by headline (probably not a good long-term-solution)
2017-02-10 23:34:23 +01:00