您的日志记录理念是什么? [关闭]

2024-01-19

As 杰夫·阿特伍德问道 https://blog.stackoverflow.com/2008/09/podcast-20/:“你的日志哲学是什么?所有的代码都应该被乱扔吗?.logthis() and .logthat()打电话?或者你会在事后以某种方式注入日志记录吗?”


我的日志记录哲学很容易概括为四个部分:

审计或业务逻辑日志记录

记录那些需要记录的事情。这来自应用程序要求,可能包括记录对任何数据库所做的每个更改(如在许多金融应用程序中)或记录对数据的访问(如健康行业可能需要满足行业法规)

由于这是计划要求的一部分,许多人并未将其包含在对日志记录的一般讨论中,但是这些领域存在重叠,并且对于某些应用程序,将所有日志记录活动放在一起考虑是有用的。

程序记录

这些消息将帮助开发人员测试和调试应用程序,并更轻松地跟踪数据流和程序逻辑,以了解哪里可能存在实现、集成和其他错误。

通常,此日志记录会根据调试会话的需要打开和关闭。

性能记录

根据需要添加稍后的日志记录,以查找和解决性能瓶颈和其他程序问题,这些问题不会导致程序失败,但会带来更好的操作。在内存泄漏和一些非严重错误的情况下与程序日志记录重叠。

安全日志记录

记录安全性受到关注的用户操作以及与外部系统的交互。对于确定攻击者在攻击后如何破坏系统很有用,但也可以与入侵检测系统结合以检测新的或正在进行的攻击。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

您的日志记录理念是什么? [关闭] 的相关文章

  • 我应该如何在 Python 中将 HTTPHandler 与 RotatingFileHandler 链接起来?

    我需要创建一个系统 将嵌入式系统中生成的日志消息远程记录在服务器上并存储在轮换日志文件中 由于网络通信的限制 日志消息必须通过HTTP协议传输 服务器已经运行了Flask http flask pocoo org 基于 HTTP 服务器 因
  • 如何编写写入 /var/log/myapp 目录的 C/C++ 应用程序?

    背景 在 Linux 系统上 应用程序日志 https help ubuntu com community LinuxLogFiles Application Logs存在于子目录中 var log 其所有者为root root并且在我的系
  • MS SQL 2008 如何读取日志

    我有一个有很多行的表 有什么办法可以找出来当插入具体行时 我没有创建 更新时间列 Thanks 检查日志以读取此类信息可以在单个日志条目的基础上完成 但该格式仍然没有记录 而且解码起来确实不容易 我只会出于纯粹的兴趣或取证目的而查看它 如果
  • 查看登录设备

    我想查看Log在设备上 即System out println 我可以查看DDMS但如何在运行时在设备屏幕上查看APK文件 还有一个适用于 Android 的 Logcat 应用程序 code google com p android ra
  • 日志处理程序是否使用单独的线程?

    蟒蛇的日志处理程序 http docs python org library logging handlers html都很棒 其中一些 例如SMTP处理程序 http docs python org library logging han
  • 有没有办法像我们在bunyan CLI 中显示的那样显示winston 日志文件?

    In Bunyan https github com trentm node bunyanlogger 我们可以看到这样的日志文件 tail f sample log bunyan并以彩色显示日志并漂亮地显示 json 对象 但我找不到类似
  • 如何关闭 Grizzly 日志记录?

    如何关闭 Grizzly 的日志记录 我想关闭以下日志记录 Okt 18 2018 8 42 24 AM org glassfish grizzly http server NetworkListener start INFORMATION
  • 如何使用 Python 从 Azure Functions 中的辅助线程重定向日志

    我正在使用 Azure 函数运行启动多个线程的 Python 脚本 出于性能原因 一切都按预期工作 但 Azure Functions 日志中仅显示来自 main 线程的信息日志 我在 main 中启动的 辅助 线程中使用的所有日志都不会出
  • 更改 Logger 实例的全局设置

    我在用着java util logging Logger http download oracle com javase 1 4 2 docs api java util logging Logger html作为我的应用程序的日志引擎 每
  • 日志记录在 Android 设备上实际上有什么作用?

    我一直在 Android 示例中看到这样的代码 try catch Exception e Log e Error e getMessage 什么是Log e实际上在物理设备上做什么 它进入系统日志 开发人员可以通过 SDK 工具访问该日志
  • 如何使用 Serilog ForContext

    我是 Serilog 新手 很难弄清楚如何使用上下文功能 当我运行下面的代码时 输 出文件不包含报告 ID 我缺少什么想法吗 var logger new LoggerConfiguration WriteTo File C Log txt
  • 如何用Java写入OS系统日志?

    Mac OS 有一个名为 Console 的应用程序 其中包含记录的消息 错误和故障 我相信 Windows 中的等效项是事件查看器 我想 Linux 上也有一个 但我不知道它是什么 也不知道它在哪里 是否可以像这样从 Java 输出获取消
  • 如何配置应用程序中的所有记录器

    Python 的日志记录模块允许模块或类定义自己的记录器 不同的记录器可以有不同的处理程序 其中一些可能选择记录到文件 而另一些则选择记录到标准输出 现在 我的应用程序使用其中几个模块 每个模块都有自己的记录器 这些记录器具有各种处理程序
  • PHP MVC 应用程序中哪里可以捕获异常?

    我有一个中小型 PHP 应用程序 用于练习 OOP 和 MVC 技能 我有初始化 引导程序调用的文件Router谁打电话控制器 gt 服务层 gt 存储库 数据库 然后将变量发送回视图层 所有依赖项均由 DiC IOC 处理 我创建抽象类
  • 记录共享和映射的诊断上下文

    据我所知 其他人做了什么来解决 Commons Logging 项目 针对 NET 和 Java 不支持映射或嵌套诊断上下文这一事实 执行摘要 我们选择直接使用实现者日志框架 在我们的例子中为 log4j 长答案 您是否需要一个抽象日志框架
  • 有一种简单的方法可以忽略时间戳来区分日志文件吗?

    我需要比较两个日志文件 但忽略每行的时间戳部分 确切地说是前 12 个字符 有没有一个好的工具 或者一个聪明的 awk 命令 可以帮助我 根据您使用的 shell 您可以改变方法 Blair https stackoverflow com
  • Elasticsearch 无法写入日志文件

    我想激活 elasticsearch 的日志 当我运行 elasticsearch 二进制文件时 我意识到我在日志记录方面遇到问题 无法加载配置 这是输出 sudo usr share elasticsearch bin elasticse
  • logback的“谨慎模式”是如何实现的?

    The 审慎模式 http logback qos ch manual appenders html prudentlogback 中的序列化所有 JVM 之间的 IO 操作 写入同一文件 可能运行在不同的主机上 在其他日志记录框架中 如果
  • iPhone 崩溃日志?

    我已经配置了一部 iPhone 并让用户安装了该应用程序 它失败 是否有崩溃日志可以让我看到 iPhone 上失败的原因 Ian 如果您可以使用 xcode 将 iPhone 连接到计算机 则在管理器窗口中它会显示每个应用程序崩溃的崩溃日志
  • 如何手动发送django异常日志?

    我的应用程序中有一个应该返回的特定视图HttpResponse 如果一切都成功完成并且类似HttpResponseBadRequest 否则 此视图适用于外部数据 因此可能会引发一些意外的异常 我当然需要知道发生了什么 所以我有这样的东西

随机推荐

  • Vue.js 路由器:历史模式和 AWS S3 (RoutingRules)

    我有一个使用 Amazon S3 和 Cloudflare 启动并运行的 Vue js 应用程序 当我打开索引并浏览到 dashboard 时 一切正常 但是 当我直接在新选项卡中打开仪表板之类的路线或刷新页面时 我从 S3 收到以下错误
  • RoR 设计:sign_in 总是返回无效的电子邮件/密码

    每次登录时 我都会收到错误消息 表明电子邮件 密码无效 routes devise for users devise scope users do get users sign out gt devise sessions destroy
  • 最好的异常处理策略应该是什么

    我正在开发用户从 UI 调用方法的应用程序 在此我从业务类调用一个方法 该方法调用另一个方法 用户界面 gt 方法1 gt 方法2 gt 方法3 如果任何方法中发生任何异常 我想向用户显示错误消息 我应该直接向调用者方法抛出异常吗 在 UI
  • Discord JS - 如何对同一个嵌入多次做出反应?

    我只拿到了第一个 钱袋子 表情符号对频道中的最新消息做出反应 这是机器人发送的嵌入 但是 我希望机器人对新嵌入做出反应 钱袋子 and ticket 表情符号 到目前为止它会与 钱袋子 表情符号 但是 当它尝试与 ticket 表情符号 如
  • Angular 6 Firebase 快照返回未定义

    我正在将对象上传到我的数据库 然后尝试检索所有项目 在第二步中我遇到错误 我的对象类 export class Data key string name string address string address2 string pscod
  • Sublime Text 2:如何在不移动光标的情况下向上/向下翻页

    我使用的是 OS X 10 8 4 ST2 当我使用 Home 和 End 键时 视口移动并且光标保持不变 这是标准的 Mac 行为 也是我所期望的 但是 当我使用 Page Up pageup pgup 和 Page Down paged
  • Python3 shebang 线未按预期工作

    我在 Solaris 环境中运行 Python 脚本时遇到以下问题 看来我在 shebang 线上做了一些不正确的事情 但我无法判断这是 Python 3 问题还是命令行问题 但我怀疑它与 shebang 行有某种关系 因为当我在命令行上显
  • “砰”或“!”是什么意思?在 git 命令之前?

    正如您从这段摘录中看到的 有一个 在 git 命令之前 重点是什么 alias commitx git add git commit https stackoverflow com a 8956546 1354543 https stack
  • 如何每 10 秒发出一次 Ajax 请求(长轮询除外)?

    我尝试使用以下命令每 10 秒从服务器请求一个 json 对象 setInterval function ajax url success function data do stuff with data 10000 但这不是很有效 我了解
  • 使用 WordNet 确定两个文本之间的语义相似度?

    如何使用 WordNet 确定 python 中两个文本之间的语义相似度 明显的预处理是删除停用词和词干 但是然后呢 我能想到的唯一方法是计算两个文本中每个单词之间的 WordNet 路径距离 这是一元语法的标准 但这些都是大型 400 个
  • 无法解析符号“FusedLocationProviderClient”

    我有一个错误无法解析符号 FusedLocationProviderClient 声明时 private FusedLocationProviderClient mFusedLocationClient 这里也问同样的问题无法解析符号 Fu
  • sqlalchemy 按计数列过滤

    我有一个用户查询 它按每个用户拥有的订单数量 ordersCount 进行过滤 User query filter ordersCount gt 2 如果我运行它 它会显示 where 子句 中的未知列 ordersCount 根据我的经验
  • 捕获文本框滚动事件?

    Textbox or richtextbox 我唯一想要的就是当滚动条移动时触发一个函数 我已经找到了GetScrollPos and SetScrollPos 我想过定期检查滚动条位置 但必须有更好的方法 那么 使用 WinForms 更
  • Spring MVC 和 Velocity:模板结构

    我想实现这种模板功能 有一个模板 定义完整 x html 网页的页眉 页脚和公共部分 当返回字符串时 Controller它将定义包含到模板特定部分的视图 像这样 控制器 RequestMapping value method Reques
  • EF Core 迁移错误:“无法创建‘ApplicationContext’类型的对象”

    我尝试使用 EF Core 进行迁移 但收到错误 如何修复此错误 PM gt add migration ini 无法创建 ApplicationContext 类型的对象 添加一个 IDesignTimeDbContextFactory
  • 在iPhone中使用带有userid参数的base64 haxcode将图像上传到服务器

    我正在使用这段代码 但问题是它在 nsdata 转换块中对 Haxcode 进行编码 我想发送相同的代码 我用 userid 得到的代码是固定整数 请帮忙 NSData imageData NSData dataWithData UIIma
  • 表达式树 - 不必要的转换为 int32

    在处理字节和短整型时 表达式树似乎构建了不必要的转换 它们将两侧 例如在二进制表达式中 转换为 int32 这是我见过的一些 Linq 提供程序中的一个问题 每个提供程序都必须剥离这个冗余层才能得到原始表达式 NHibernate 不会删除
  • Spark 结构化流内存流 + 行 + 编码器问题

    我正在尝试使用 Spark 结构化流在本地计算机上运行一些测试 在批处理模式下 这是我正在处理的行 val recordSchema StructType List StructField Record MapType StringType
  • 如何从生成的 pom 中排除具有显式 URL 的库依赖项?

    我正在移动Scala 迁移 http code google com p scala migrations 项目从 ant ivy 到 sbt 它可以选择使用 log4jdbc 作为不存在于的库依赖项任何公共 Maven 存储库 http
  • 您的日志记录理念是什么? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 As 杰夫 阿特伍德问道 https blog stackoverflow com 2008 09 podcast 20 你的日志哲学是什么 所