84 std::string logsDir =
sConfigMgr->GetStringDefault(
"LogsDir",
"");
87 if ((logsDir.at(logsDir.length() - 1) !=
'/') && (logsDir.at(logsDir.length() - 1) !=
'\\'))
88 logsDir.push_back(
'/');
90 std::string logname =
sConfigMgr->GetStringDefault(
"PacketLogFile",
"");
93 _file = fopen((logsDir + logname).c_str(),
"wb");
108 fwrite(&header,
sizeof(header), 1,
_file);
126 auto bytes = addr.to_v4().to_bytes();
129 else if (addr.is_v6())
131 auto bytes = addr.to_v6().to_bytes();
143 fwrite(&header,
sizeof(header), 1,
_file);
std::array< uint8, SESSION_KEY_LENGTH > SessionKey
std::pair< uint32, ObjectGuid > Signature
bool CanLogPacket() const
static PacketLog * instance()
std::once_flag _initializeFlag
void LogPacket(WorldPacket const &packet, Direction direction, boost::asio::ip::address const &addr, uint16 port, ConnectionType connectionType)
std::mutex _logPacketLock
constexpr std::size_t size()