# POP3轮询：理解dovecot日志

**URL:** https://meta.discourse.org/t/pop3-polling-understanding-dovecot-log/321422
**Category:** Support
**Created:** [2024年八月13日 08:04 UTC](https://meta.discourse.org/t/pop3-polling-understanding-dovecot-log/321422 "2024-08-13T08:04:53Z")
**Posts on this page:** 10
**Page:** 1

<div class="post-metadata">

### Author: ![rrodrigueznt](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rrodrigueznt/32/351504_2.png) [@rrodrigueznt](https://meta.discourse.org/u/rrodrigueznt)
#### Post date: [2024年八月13日 08:04 UTC](https://meta.discourse.org/t/pop3-polling-understanding-dovecot-log/321422/1 "2024-08-13T08:04:53Z")

</div>

我正在学习 POP3 轮询和通过电子邮件重放功能，并开始理解它们。

但我无法解释当 Discourse 连接到我们的 POP3 服务器时，它在日志中记录了什么。您能否帮助我解释每次 Discourse 连接到它时在 POP3 服务器日志中记录的配对行 `RETR/access`？正如 `pop3 polling period mins` 的值所预期的那样，它每 5 分钟发生一次。

在[附件](https://meta.discourse.org/uploads/short-url/zItFSFQ7Hj30YHLUr4GIIoREjDy.txt)（21.2 KB）中，记录了自激活这两个功能以来的行以及第一次轮询操作。

感谢您的帮助！

---

<div class="post-metadata">

### Author: ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)
#### Post date: [2024年八月13日 08:45 UTC](https://meta.discourse.org/t/pop3-polling-understanding-dovecot-log/321422/2 "2024-08-13T08:45:48Z")

</div>

（这为什么是 Discourse 的问题而不是 Dovecot 的问题？）

这仅仅意味着 Discourse 正在逐一检索您邮箱中的邮件。

---

<div class="post-metadata">

### Author: ![rrodrigueznt](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rrodrigueznt/32/351504_2.png) [@rrodrigueznt](https://meta.discourse.org/u/rrodrigueznt)
#### Post date: [2024年八月13日 09:08 UTC](https://meta.discourse.org/t/pop3-polling-understanding-dovecot-log/321422/3 "2024-08-13T09:08:52Z")

</div>

我犹豫是问这里还是去 Dovecot 论坛寻求帮助。我在这里提问是因为 Discourse 是从服务器轮询电子邮件。您的回答帮助我匹配了“配对行”的数量与服务器上可用消息的数量。我还不明白为什么有时配对行的数量与收件箱中的消息数量完全相同，但其他时候却只有 36。

我现在正在查看 Dovecot 社区以获取更多信息：我需要获得关于日志的完整解释，才能使用 Discourse 的 POP3 功能。

**非常感谢您的帮助** 。

---

<div class="post-metadata">

### Author: ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)
#### Post date: [2024年八月13日 09:10 UTC](https://meta.discourse.org/t/pop3-polling-understanding-dovecot-log/321422/4 "2024-08-13T09:10:49Z")

</div>

> [@rrodrigueznt](#):
>
> 我还不明白为什么有时配对行的数量正好是收件箱中的消息数量，但有时却只有 36

您确定 36 是由 Discourse 引起的，而不是由例如 roundcube 或其他逐页检索邮件的电子邮件客户端引起的吗？

---

<div class="post-metadata">

### Author: ![rrodrigueznt](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rrodrigueznt/32/351504_2.png) [@rrodrigueznt](https://meta.discourse.org/u/rrodrigueznt)
#### Post date: [2024年八月13日 09:27 UTC](https://meta.discourse.org/t/pop3-polling-understanding-dovecot-log/321422/5 "2024-08-13T09:27:51Z")

</div>

> [@RGJ](#):
>
> 您确定 36 是由 Discourse 引起的，而不是由例如 roundcube 或其他逐页检索邮件的电子邮件客户端引起的吗？

像新手一样确定！感谢您考虑这个问题。

我认为 RoundCube 在这里使用的是 IMAP。附件（9.8 KB）包含一个 n=36 系列。它每 5 分钟重复一次。这就是我猜测它与 Discourse 相关的主要原因。我还无法理解 n 何时等于 premise 账户收件箱中的消息数量。

谢谢！

---

<div class="post-metadata">

### Author: ![rrodrigueznt](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rrodrigueznt/32/351504_2.png) [@rrodrigueznt](https://meta.discourse.org/u/rrodrigueznt)
#### Post date: [2024年八月19日 14:04 UTC](https://meta.discourse.org/t/pop3-polling-understanding-dovecot-log/321422/6 "2024-08-19T14:04:52Z")

</div>

我现在对来源更加确定了。在阅读了 [RFC 1939](https://www.ietf.org/rfc/rfc1939.txt) 并能够访问 `rails c` 来使用 `net/pop` 库进行一些基本操作后。

```plaintext
[10] pry(main)> Net::POP3.enable_ssl(OpenSSL::SSL::VERIFY_NONE)
=> {:verify_mode=>0}
[11] pry(main)> pop = Net::POP3.new('x.y.z')
=> #<Net::POP3 x.y.esz open=false>
[12] pry(main)> pop.start('premises', 'xxxxxxxxx')
=> #<Net::POP3 x.y.z: open=true>
[13] pry(main)> pop.n_mails()
=> 103

```

我无法解释的是，为什么有些轮询周期只读取 36 条消息。最后访问的始终是 `UID=36`。

```plaintext
Aug 19 15:46:00 igfae dovecot: pop3(premises): Debug: Mailbox INBOX: Opened mail UID=36 because: access
Aug 19 15:46:00 igfae dovecot: pop3(premises): Debug: Mailbox INBOX: Opened mail UID=36 because: RETR

```

尽管该帐户现在有更多消息，但此数字并未更改。

您能帮我找到这种行为的解释吗？我们中心的安保人员不喜欢运行我们无法解释的日志生成软件！谢谢！

---

<div class="post-metadata">

### Author: ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)
#### Post date: [2024年八月19日 15:02 UTC](https://meta.discourse.org/t/pop3-polling-understanding-dovecot-log/321422/7 "2024-08-19T15:02:05Z")

</div>

尽管这很有诱惑力——因为我也不喜欢我不理解的东西——但我认为这是一项无用的练习，因为实际上并没有问题。

我上次确实快速检查了源代码，但没有发现任何东西。  
我建议您降低日志级别……

---

<div class="post-metadata">

### Author: ![rrodrigueznt](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rrodrigueznt/32/351504_2.png) [@rrodrigueznt](https://meta.discourse.org/u/rrodrigueznt)
#### Post date: [2024年八月20日 08:15 UTC](https://meta.discourse.org/t/pop3-polling-understanding-dovecot-log/321422/8 "2024-08-20T08:15:19Z")

</div>

> [@RGJ](#):
>
> 降低日志级别

日志是另一个我有很多东西需要学习的主题！

在我们邮件服务器当前的 `/var/log/maillog` 文件中，36467 行中有 30644 行与 Dovecot 相关。在我们的组织中，Discourse 是唯一使用 Dovecot 的服务。尽管许多人都在度假，但 84% 的记录显示了 Discourse 的电子邮件活动。

我完全无法控制邮件服务器记录的内容。我只能读取它。因此，我只能修改 Discourse/Dovecot 发送的信息。大多数行都包含 `Debug`。所以，我猜我们的 Discourse 实例中的日志配置正在向邮件服务器发送调试信息。

我该如何修改这种行为？

如果我对日志工作原理有任何明显的误解，请提前接受我的歉意！谢谢！

---

<div class="post-metadata">

### Author: ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)
#### Post date: [2024年八月20日 09:01 UTC](https://meta.discourse.org/t/pop3-polling-understanding-dovecot-log/321422/9 "2024-08-20T09:01:57Z")

</div>

> [@rrodrigueznt](#):
>
> 所以，我猜我们的 Discourse 实例中的登录配置正在向邮件服务器发送调试信息。

不，邮件服务器被配置为以“debug”级别进行日志记录。

发生的情况是这样的：

- 贵组织中的 dovecot 实例已被配置为以 debug 级别进行日志记录。debug 级别用于高级故障排除，需要深入了解 dovecot 软件的工作原理。由于没有问题，因此无需进行故障排除，并且由于无需进行故障排除，因此可以将日志级别设置为较低（不那么详细）的级别。
- 您所在中心的安保人员抱怨他们不理解日志。这是因为理解这些日志需要深入了解 dovecot 软件的工作原理，而他们并不具备这种能力。

因此，解决方案是：运行 dovecot 软件的员工应更改日志级别。

这不是他们应该向 _使用_ dovecot 软件的人（即您）抱怨的事情。这是他们或他们的同事所做的。

---

<div class="post-metadata">

### Author: ![rrodrigueznt](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rrodrigueznt/32/351504_2.png) [@rrodrigueznt](https://meta.discourse.org/u/rrodrigueznt)
#### Post date: [2024年八月20日 16:22 UTC](https://meta.discourse.org/t/pop3-polling-understanding-dovecot-log/321422/10 "2024-08-20T16:22:12Z")

</div>

> [@RGJ](#):
>
> 因此，解决方案是：运行 dovecot 软件的员工应更改日志级别。

他们做到了！日志现在干净多了，信息也更丰富了。

非常感谢您的解释。通过对情况进行良好的描述和分析来进行对话要容易得多。我完全理解这些安全方面的担忧，因为我们在过去几年中也遇到过一些棘手的情况。我接受为了解释而进行的努力，但是，如果没有您和这里其他志愿者的帮助，像我这样 IT 技能有限的人将无法使用和推广 Discourse 这样出色的工具。

此外，我现在将转向与电子邮件设置相关的其他疑问。非常感谢！
