Commit Graph
499 Commits
Author SHA1 Message Date
Nay 5f1977cb1d Core: Fix many "errors"/warnings and coding style (1)
Extractors, worldserver, authserver, shared and collision affected

Errors were found using Cppcheck, open-source static analysis tool
2012-08-30 19:07:59 +01:00
kaelima bdfae83898 Core/Creature: Added DB support for UNIT_FIELD_FLAGS_2. Thanks cyberbrest
- Added more flags to UnitFlags2 enum (Thanks wpp)
2012-08-30 04:52:56 +02:00
Spp 5aee9433e1 Core/Logging: Minor optimization in ShouldLog 2012-08-27 12:56:45 +02:00
Shauren 43cbb1e105 Core/DBLayer: Fixed memory leaks when query returned empty result set 2012-08-26 21:24:15 +02:00
Spp a566e3e58b Core/Logging: Move more log messages to LOG_FILTER_SERVER_LOADING 2012-08-16 11:02:46 +02:00
Spp 3c42401d66 Core/Logging: Set config options to behave like old log system. 2012-08-16 00:56:58 +02:00
Spp 8a1e7dd070 Core/Loading: Re-enable Server loading log 2012-08-16 00:23:44 +02:00
Nay ca2bc35713 Misc: CRLF to LF, whitespace cleanup and tabs to spaces 2012-08-15 21:30:55 +01:00
Spp 52a5991c12 Core/Logging: Added documentation about this system
- Restored old CharDump (LOG_FILTER_PLAYER_DUMP) but disabled by default.
- "%s" is now used to set dynamic file names, only used by GM commands and Player dump
2012-08-15 19:58:02 +02:00
Spp b77d88ec51 Core/Logging: Fix crash on authserver shutdown
Closes #7365
Closes #7325
2012-08-15 15:59:11 +02:00
Shauren ca0a54f357 Core/Logging: Fixed a possible crash with dynamic log file names 2012-08-09 14:31:09 +02:00
kaelima 78fdeca851 Core/Logging: Fix crash in AppenderFile deconstructor when logfile is uninitialized 2012-08-09 12:54:35 +02:00
Nay 429130522e Core/Authserver: Fix logging crash at startup 2012-08-07 04:21:58 +02:00
kandera 5aa54ca0e9 Update src/server/shared/Logging/AppenderDB.cpp
Core/Appender: fix typo
2012-08-06 13:02:11 -03:00
Spp 4a5a077b65 Core/Logging: Use prepared statements in AppenderDB 2012-08-06 13:36:34 +02:00
Spp 156d1e7b3c Core/SQL: Kill core if error 1064 is triggered (error code 1064 you have an error in your sql syntax). This means the sql has an build error and core fix is needed 2012-08-06 13:23:09 +02:00
Spp 6d21515939 Core/Logging: Implement logging to database 2012-08-06 13:20:24 +02:00
Spp 97c4b92eb0 Core/Logging: Try to simplify configuration of loggers and appenders
Changed multiple lines to a simple format:
- Logger.name=Type,LogLevel,Flags,AppenderList
- Appender.name=Type,LogLevel,Flags,optional1,optional2
  * Type = File: optional1 = File name, optiona2 = Mode
  * Type = Console: optional1 = Colors

Created a default set of loggers and appenders.
- Root logger defaults to Error, that means you will see nothing on console by default (not even loading)
- You need to add the loggers to Loggers options if you want to enable them, otherwise Root logger will be used for all types

Restored outSQLDriver (LOG_FILTER_SQL_DRIVER), outSQLDev (LOG_FILTER_SQL_DEV), outArena (LOG_FILTER_ARENA) and outChar (LOG_FILTER_CHARACTER) functionality by creating new types (LOG_FILTER_CHARACTER is a rename of LOG_FILTER_DELETE.

Note: You need to update your config file... again (yeah sorry... trying to make it simpler)
2012-08-06 12:10:33 +02:00
Spp 5746b688fa Core/Logging: Reload Logging options when .reload config is used 2012-08-06 09:30:47 +02:00
Spp 483fb42306 Core/Logging: Move player delete logging to new type LOG_FILTER_PLAYER_DELETE (34). Also add missing sql from 55ce180f28 2012-08-06 08:49:31 +02:00
Spp 3f42094b9c Core/Logging: Add option to remove timestamp, Log Level and Log Filter Type from logged msgs
- Appender config option .Timestamp and .Backup became obsolete
- New Appender config option .Flags added

Appender Console prefixes Log Level and Log Filter Type to the logged text as default
Appender File prefixes Timestamp, Log Level and Log Filter Type to the logged text as default
2012-08-05 15:38:25 +02:00
Vincent-Michael cc0ff69ca4 Core/Commands:
* Add remove support for disable command
* Add quest disables support
* Add check for no existent entry
* Fix problems with flags 0
* Fix code style
2012-08-05 02:02:35 +02:00
LordJZ f9cb4280bd Core/ByteBuffer: Print stack trace in ByteBufferException::PrintError. 2012-08-05 00:28:23 +02:00
joschiwald af92a36e88 Core/Logging: Use config LogsDir to save log files (re-added) 2012-08-04 02:55:11 +01:00
Spp 1089102827 Add missing Copyright headers and some clarification to config files... ¬¬ 2012-08-03 17:29:43 +02:00
Spp 634776e0bc Fix compile under windows 2012-08-03 15:54:54 +02:00
Spp 55ce180f28 Core/Logging: Add Asyncronous logging with Loggers ("What to log") and Appenders ("Where to log") system. Will allow to select to full log some parts of core while others are not even logged.
- Logging System is asyncronous to improve performance.
- Each msg and Logger has a Log Type and Log Level assigned. Each msg is assigned the Logger of same Log Type or "root" Logger is selected if there is no Logger configured for the given Log Type
- Loggers have a list of Appenders to send the msg to. The Msg in the Logger is not sent to Appenders if the msg LogLevel is lower than Logger LogLevel.
- There are three (at the moment) types of Appenders: Console, File or DB (this is WIP, not working ATM). Msg is not written to the resource if msg LogLevel is lower than Appender LogLevel.
- Appender and Console Log levels can be changed while server is active with command '.set loglevel (a/l) name level'

Explanation of use with Sample config:

Appender.Console.Type=1       (1 = Console)
Appender.Console.Level=2      (2 = Debug)

Appender.Server.Type=2        (2 = File)
Appender.Server.Level=3       (3 = Info)
Appender.Server.File=Server.log

Appender.SQL.Type=2           (2 = File)
Appender.SQL.Level=1          (1 = Trace)
Appender.SQL.File=sql.log

Appenders=Console Server      (NOTE: SQL has not been included here... that will make core ignore the config for "SQL" as it's not in this list)

Logger.root.Type=0            (0 = Default - if it's not created by config, server will create it with LogLevel = DISABLED)
Logger.root.Level=5           (5 = Error)
Logger.root.Appenders=Console

Logger.SQL.Type=26            (26 = SQL)
Logger.SQL.Level=3            (2 = Debug)
Logger.SQL.Appenders=Console Server SQL

Logger.SomeRandomName.Type=24 (24 = Guild)
Logger.SomeRandomName.Level=5 (5 = Error)
Loggers=root SQL SomeRandomName

* At loading Appender SQL will be ignored, as it's not present on "Appenders"

* sLog->outDebug(LOG_FILTER_GUILD, "Some log msg related to Guilds")
  - Msg is sent to Logger of Type LOG_FILTER_GUILD (24). Logger with name SomeRandomName is found but it's LogLevel = 5 and Msg LogLevel=2... Msg is not logged

* sLog->outError(LOG_FILTER_GUILD, "Some error log msg related to Guilds")
  - Msg is sent to Logger of Type LOG_FILTER_GUILD (24). Logger with name SomeRandomeName is found with proper LogLevel but Logger does not have any Appenders assigned to that logger... Msg is not logged

* sLog->outDebug(LOG_FILTER_SQL, "Some msg related to SQLs")
  - Msg is sent to Logger SQL (matches type), as it matches LogLevel the msg is sent to Appenders Console, Server and SQL
    - Appender Console has lower Log Level: Msg is logged to Console
    - Appender Server has higher Log Level: Msg is not logged to file
    - Appender SQL has lower Log Level: Msg is logged to file sql.log

* sLog->outDebug(LOG_FILTER_BATTLEGROUND, "Some msg related to Battelgrounds")
  - Msg is sent to Logger root (Type 0) as no Logger was found with Type LOG_FILTER_BATTLEGROUND (13). As Logger has higher LogLevel msg is not sent to any appender

* sLog->outError(LOG_FILTER_BATTLEGROUND, "Some error msg related to Battelgrounds")
  - Msg is sent to Logger root (Type 0) as no Logger was found with Type LOG_FILTER_BATTLEGROUND (13). Msg has lower LogLevel and is sent to Appender Console
    - Appender Console has lower LogLevel: Msg is logged to Console
2012-08-03 14:20:18 +02:00
Alternative dc7030ced6 Some codestyle changes. 2012-08-02 16:47:28 -04:00
Alternative f303782de4 Added disable commands. 2012-08-02 16:33:35 -04:00
Shauren 4df39dae95 Core/AuctionHouse: Refactored and corrected building auction mail messages 2012-07-19 15:33:14 +02:00
NNN666 e757ebf6ba Core/Player: Fix issues with 'ignore this slot' option on equipment manager usage 2012-07-13 16:27:11 +02:00
leak 176a2c1080 Core/Warden: Workaround for an OpenSSL bug in the ARC4 stream cipher initialization that causes crashes on some OS
-  Skip loading warden_action overrides when warden is disabled

fixes #6486
2012-07-13 09:11:05 +02:00
Shauren c8d20004a5 Core: Minor code style corrections 2012-06-30 16:07:09 +02:00
Shauren e0997874f5 Core/SpellScripts: Changed OnUnitTargetSelect hook to OnObjectAreaTargetSelect, it will now work with WorldObject instead of only Units and call it even for empty target lists 2012-06-29 21:53:35 +02:00
Shauren c7775c8d72 Core/Maps: Moved object respawn time storage from global to map level. This removes unneccessary locking since all objects run within its map's thread. 2012-06-07 23:20:57 +02:00
Shauren 024a39af9f Core: Tweaked ASSERT macro a bit - removed library assert as on Windows platforms it calls abort() and does not generaty crash dump files. 2012-05-12 21:11:41 +02:00
kaelima f34e650fe0 Core/Accounts: Delete all bans related to an account when it has been deleted. 2012-05-06 02:37:31 +02:00
kaelima 7f51c399c6 Core/DBLayer: CHAR_DEL_CHAR_AURA_FROZEN query should be asynchronous
Closes issue #6273

Also corrected one opcode name in Opcodes.cpp (changes nothing)
2012-04-30 02:07:59 +02:00
Shauren 5c3ee06f49 Core/Errors: Improved OS detection for windows crash reporting 2012-04-21 16:29:26 +02:00
Shauren c055a8617d Scripts/Icecrown Citadel
* Fixed Professor Putricide Tear Gas stunning himself
* Fixed visual of Unstable Experiment
* Fixed oozes not picking new targets after hitting old
* Fixed Gas Cloud not using melee attack
* Removed ooze summon position hack

Closes #4301
Closes #2726
Closes #5119
Closes #4464
Closes #2874
Closes #4407
Closes #2421
Closes #4899
2012-04-13 19:56:00 +02:00
Shauren 7405202023 Removed unused file 2012-04-12 15:44:41 +02:00
faramir118 f9ae8e6810 Core/DBLayer: incorrect use of va_start
Signed-off-by: Machiavelli <[email protected]>
2012-04-11 19:51:26 +02:00
kaelima 3dabe220ce Cmake: Remove no longer existing */dep/mersennetwister include
Thanks Venugh for noticing
2012-04-09 16:03:22 +02:00
kaelima 7f903edcd9 Core/DBLayer: Fix two crashes when using pdump command
Closes #6107
2012-04-09 03:33:46 +02:00
Machiavelli 9d6c8add0e Fix non-PCH build and GitExtensions screwup from last changeset 2012-04-08 18:58:42 +02:00
Machiavelli bc96df1aae Core/Shared: Move container functions to shared project under Trinity::Container namespace. Also implement RandomResizeList which takes a predicate function as parameter.
Core/ScriptedAI: Extend SummonList::DoAction to take a predicate function as parameter and allow specifying a maximum number of units to be selected.
2012-04-08 17:40:05 +02:00
Nay 3d83f663f6 Core/Tickets: Add report time and current latency to lag_reports table
It's a tiny bit more useful now.
2012-04-07 19:12:14 +01:00
Nay d546a531c3 Core&DB/Spells: Fix DK T8 4p bonus
- Added missing spell to DB
- Corrected DBC data that is, very likely, wrong
Closes #6062
2012-04-06 18:49:40 +01:00
Shauren d9451cedd8 Core/World: Add character name data after loading PlayerDump
Closes #3653

Note: Manual changes in database while the server is running are not advised thus not supported
2012-04-03 00:02:58 +02:00
kaelima ede839dd97 Core/Database: Some extended debug output for Field::GetXXX logs. 2012-04-02 03:30:19 +02:00