gpt4 book ai didi

java - 为 Java 服务器编写日志的最佳实践

转载 作者:太空宇宙 更新时间:2023-11-04 11:53:13 25 4
gpt4 key购买 nike

我正在寻找一些关于为我用 Java 编写的游戏服务器编写日志的最佳/常见实践的建议(第一次使用服务器/客户端概念,我从未对日志记录做过任何事情)。我尝试过谷歌搜索,但所涉及的关键字有点模糊,无法为我的问题提供任何答案。

我有一个包含用户、游戏大厅和游戏的服务器。我认为我应该创建一个日志来保存服务器上发生的所有事情的历史记录。在这个日志中,我认为我应该记录服务器本身的状态更改(启动、关闭、正在处理的命令)和套接字连接(新/丢失的客户端、传入/传出消息)。

我不确定这是否是最好的做法,或者也有一个包含更多人类可读消息的日志,例如“Bob781 加入了大厅 #4”。或“microman12 在一场比赛中击败了 sun44。”

  • 我应该将日志写入控制台还是文件? (2 个单独的文件?)
  • 什么格式最好或最常用?它们的格式应该相同吗?
  • 我遇到了“Common Log Format ”,这是套接字连接的最佳格式选择吗?它可以用于服务器状态吗?
  • 我应该使用 java.util.logging 中的某些内容还是自己输出字符串?

最佳答案

在从头开始之前,您总是希望寻找现有的解决方案。当您使用/创建日志记录时,我会根据我的经验建议以下提示

  1. 确保您可以在需要时可靠地检索日志。
  2. 根据您要查找的内容轻松查找日志文件。例如,如果特定游戏大厅出现问题,您应该能够轻松导航到与该游戏大厅相关的文件或文件目录。没有什么比必须解析一个巨大的日志文件更糟糕的了......
  3. 使每条日志消息都有意义。不要只是为了记录而记录东西。您将希望能够读取日志消息并了解该消息在服务器代码中的相对位置。当您以后在服务器代码中遇到错误时,这将有所帮助。
  4. 在每条日志消息创建时(而不是写入日志文件时)添加时间戳。

关于java - 为 Java 服务器编写日志的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41602181/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com