annotate orpg/tools/orpg_log.py @ 95:af6bf998f425 alpha

Traipse Alpha 'OpenRPG' {090919-00} Traipse is a distribution of OpenRPG that is designed to be easy to setup and go. Traipse also makes it easy for developers to work on code without fear of sacrifice. 'Ornery-Orc' continues the trend of 'Grumpy' and adds fixes to the code. 'Ornery-Orc''s main goal is to offer more advanced features and enhance the productivity of the user. Update Summary: 00: Adds menu changes to draw attention to important updates, errors, or other events. (image info coming soon) Traipse URL is not included in the repos tab and is set as default. 01: Fixes Copy for Windows and Linux (finally!!) users. Fixes incomplete update to Grid and List nodes. Fixes incomplete update to Chat Commands. 02: Fixes problems with Remote Image Upload. Fixes Drop and Drag of Minis to Map. CherryPy can now use any image in the webfiles/ folder and sub-folders. CherryPy can now Drop and Drag Minis to the Map. 03: Minor changes to Update Manager's GUI. Expert recommendation warning added to Revision Update. Step down compatibility with open_rpg & component added to orpgCore. 19-00: Better backwards compatibility in orpgCore. Using majority of 'Grumpy' network folder to correct server lag. 01: Build Number updated. 02: Fixes CherryPit misspelling. Makes Traipse Suite 'Attention' item portable, and executes it on 'Critical' debug notices. Adds incomplete Shift + Enter to Text Entry, currently creates a 'Critical' warning.
author sirebral
date Sat, 19 Sep 2009 12:19:17 -0500
parents bdbeafcb2ef4
children 496dbf12a6cb dcf4fbe09b70
rev   line source
0
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
1 # Copyright (C) 2000-2001 The OpenRPG Project
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
2 #
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
3 # openrpg-dev@lists.sourceforge.net
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
4 #
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
5 # This program is free software; you can redistribute it and/or modify
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
6 # it under the terms of the GNU General Public License as published by
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
7 # the Free Software Foundation; either version 2 of the License, or
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
8 # (at your option) any later version.
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
9 #
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
10 # This program is distributed in the hope that it will be useful,
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
13 # GNU General Public License for more details.
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
14 #
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
15 # You should have received a copy of the GNU General Public License
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
16 # along with this program; if not, write to the Free Software
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
17 # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
18 # --
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
19 #
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
20 # File: orpg_log.py
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
21 # Author: Dj Gilcrease
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
22 # Maintainer:
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
23 # Version:
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
24 # $Id: orpg_log.py,v 1.9 2007/05/06 16:43:02 digitalxero Exp $
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
25 #
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
26 # Description: classes for orpg log messages
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
27 #
79
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
28
66
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
29 from __future__ import with_statement
79
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
30 import sys, os, os.path, wx, time, traceback
0
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
31
79
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
32 from orpg.orpgCore import component
66
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
33 from orpg.external.terminalwriter import TerminalWriter
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
34 from orpg.tools.decorators import pending_deprecation
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
35 from orpg.dirpath import dir_struct
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
36
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
37 #########################
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
38 ## Error Types
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
39 #########################
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
40 ORPG_CRITICAL = 1
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
41 ORPG_GENERAL = 2
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
42 ORPG_INFO = 4
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
43 ORPG_NOTE = 8
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
44 ORPG_DEBUG = 16
0
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
45
79
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
46 def Crash(type, value, crash):
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
47 crash_report = open(dir_struct["home"] + 'crash-report.txt', "w")
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
48 traceback.print_exception(type, value, crash, file=crash_report)
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
49 crash_report.close()
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
50 msg = ''
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
51 crash_report = open(dir_struct["home"] + 'crash-report.txt', "r")
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
52 for line in crash_report: msg += line
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
53 logger.exception(msg)
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
54 crash_report.close()
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
55 logger.exception("Crash Report Created!!")
81
65c212e9a5b4 Controls panel is completed. Users cannot delete branches nicely without a Merc upgrade, so that feature will appear in Pious Paladin. Crash report is being tested on windows.
sirebral
parents: 79
diff changeset
56 logger.info("Printed out crash-report.txt in your System folder", True)
79
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
57
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
58 class DebugConsole(wx.Frame):
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
59 def __init__(self, parent):
95
af6bf998f425 Traipse Alpha 'OpenRPG' {090919-00}
sirebral
parents: 86
diff changeset
60 super(DebugConsole, self).__init__(parent, -1, "Debug Console")
79
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
61 icon = None
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
62 icon = wx.Icon(dir_struct["icon"]+'note.ico', wx.BITMAP_TYPE_ICO)
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
63 self.SetIcon( icon )
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
64 self.console = wx.TextCtrl(self, -1, style=wx.TE_MULTILINE | wx.TE_READONLY)
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
65 sizer = wx.BoxSizer(wx.VERTICAL)
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
66 sizer.Add(self.console, 1, wx.EXPAND)
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
67 self.SetSizer(sizer)
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
68 self.SetAutoLayout(True)
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
69 self.SetSize((300, 175))
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
70 self.Bind(wx.EVT_CLOSE, self.Min)
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
71 self.Min(None)
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
72 component.add('debugger', self.console)
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
73
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
74 def Min(self, evt):
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
75 self.Hide()
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
76
66
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
77 class orpgLog(object):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
78 _log_level = 7
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
79 _log_name = None
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
80 _log_to_console = False
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
81 _io = TerminalWriter(sys.stderr)
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
82 _lvl_args = None
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
83
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
84 def __new__(cls, *args, **kwargs):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
85 it = cls.__dict__.get("__it__")
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
86 if it is not None:
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
87 return it
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
88 cls.__it__ = it = object.__new__(cls)
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
89 return it
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
90
0
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
91 def __init__(self, home_dir, filename='orpgRunLog '):
66
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
92 self._lvl_args = {16: {'colorizer': {'green': True},
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
93 'log_string': 'DEBUG'},
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
94 8: {'colorizer': {'bold': True, 'green':True},
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
95 'log_string':'NOTE'},
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
96 4: {'colorizer': {'blue': True},
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
97 'log_string': 'INFO'},
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
98 2: {'colorizer': {'red': True},
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
99 'log_string': 'ERROR'},
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
100 1: {'colorizer': {'bold': True, 'red': True},
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
101 'log_string': 'EXCEPTION'}}
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
102 if not self.log_name:
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
103 self.log_name = home_dir + filename + time.strftime('%m-%d-%Y.txt',
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
104 time.localtime(time.time()))
0
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
105
66
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
106 def debug(self, msg, to_console=False):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
107 self.log(msg, ORPG_DEBUG, to_console)
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
108
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
109 def note(self, msg, to_console=False):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
110 self.log(msg, ORPG_NOTE, to_console)
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
111
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
112 def info(self, msg, to_console=False):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
113 self.log(msg, ORPG_INFO, to_console)
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
114
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
115 def general(self, msg, to_console=False):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
116 self.log(msg, ORPG_GENERAL, to_console)
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
117
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
118 def exception(self, msg, to_console=True):
95
af6bf998f425 Traipse Alpha 'OpenRPG' {090919-00}
sirebral
parents: 86
diff changeset
119 ### Beta ### Every 'Critical' exception will draw attention to the Debug Console
af6bf998f425 Traipse Alpha 'OpenRPG' {090919-00}
sirebral
parents: 86
diff changeset
120 component.get('frame').TraipseSuiteWarn('debug')
66
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
121 self.log(msg, ORPG_CRITICAL, to_console)
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
122
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
123 def log(self, msg, log_type, to_console=False):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
124 if self.log_to_console or to_console or log_type == ORPG_CRITICAL:
82
2fa8bd6785a5 TerminalWriter's colors are nice, but if no debug console is open it causes the software to look for one until a recursion error is created. Crash reports are sent to the debug console and a pop-up tells the user one has happened. Fix to chat window from SnowDog.
sirebral
parents: 81
diff changeset
125 try: self._io.line(str(msg), **self._lvl_args[log_type]['colorizer'])
2fa8bd6785a5 TerminalWriter's colors are nice, but if no debug console is open it causes the software to look for one until a recursion error is created. Crash reports are sent to the debug console and a pop-up tells the user one has happened. Fix to chat window from SnowDog.
sirebral
parents: 81
diff changeset
126 except: pass #Fails without the Debug Console
79
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
127 try: component.get('debugger').AppendText(".. " + str(msg) +'\n')
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
128 except: pass
66
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
129
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
130 if log_type & self.log_level or to_console:
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
131 atr = {'msg': msg, 'level': self._lvl_args[log_type]['log_string']}
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
132 atr['time'] = time.strftime('[%x %X]', time.localtime(time.time()))
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
133 logMsg = '%(time)s (%(level)s) - %(msg)s\n' % (atr)
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
134
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
135 with open(self.log_name, 'a') as f:
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
136 f.write(logMsg)
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
137
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
138 @pending_deprecation("use logger.log_level = #")
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
139 def setLogLevel(self, log_level):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
140 self.log_level = log_level
0
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
141
66
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
142 @pending_deprecation("use logger.log_level")
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
143 def getLogLevel(self):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
144 return self.log_level
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
145
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
146 @pending_deprecation("use logger.log_name = bla")
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
147 def setLogName(self, log_name):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
148 self.log_name = log_name
0
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
149
66
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
150 @pending_deprecation("use logger.log_name")
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
151 def getLogName(self):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
152 return self.log_name
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
153
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
154 @pending_deprecation("use logger.log_to_console = True/False")
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
155 def setLogToConsol(self, true_or_false):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
156 self.log_to_consol = true_or_false
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
157
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
158 @pending_deprecation("use logger.log_to_console")
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
159 def getLogToConsol(self):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
160 return self.log_to_consol
0
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
161
66
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
162 """
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
163 Property Methods
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
164 """
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
165 def _get_log_level(self):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
166 return self._log_level
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
167 def _set_log_level(self, log_level):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
168 if not isinstance(log_level, int) or log_level < 1 or log_level > 31:
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
169 raise TypeError("The loggers level must be an int between 1 and 31")
0
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
170
66
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
171 self._log_level = log_level
0
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
172
66
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
173 def _get_log_name(self):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
174 return self._log_name
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
175 def _set_log_name(self, name):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
176 if not os.access(os.path.abspath(os.path.dirname(name)), os.W_OK):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
177 raise IOError("Could not write to the specified location")
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
178
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
179 self._log_name = name
0
4385a7d0efd1 Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
sirebral
parents:
diff changeset
180
66
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
181 def _get_log_to_console(self):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
182 return self._log_to_console
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
183 def _set_log_to_console(self, true_or_false):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
184 if not isinstance(true_or_false, bool):
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
185 raise TypeError("log_to_console must be a boolean value")
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
186
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
187 self._log_to_console = true_or_false
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
188
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
189 log_level = property(_get_log_level, _set_log_level)
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
190 log_name = property(_get_log_name, _set_log_name)
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
191 log_to_console = property(_get_log_to_console, _set_log_to_console)
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
192
c54768cffbd4 Traipse Dev 'OpenRPG' {090818-00}
sirebral
parents: 15
diff changeset
193 logger = orpgLog(dir_struct.get("user") + "runlogs/")
79
dd4be4817377 Chat Window no longer prints excessive debug statements to console. Renamed the Update Manager menu item to Traipse Suite. Added debug console to Traipse Suite. Log now prints an error report and waits for user input so Windows users can see the error being reported.
sirebral
parents: 66
diff changeset
194 crash = sys.excepthook = Crash