问题标签 [file-monitoring]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2402 浏览

batch-file - 批处理文件监控日志文件目录并在发生更改时发送电子邮件警报?

我希望创建一个可以放置在服务器上的批处理文件,并让它每天通过任务计划程序运行以监视应用程序的日志文件目录。如果日志文件的名称发生变化(例如出现错误日志),批处理将向管理员或管理员组发送电子邮件。

这种批处理的一般脚本是什么?

谢谢你。

0 投票
4 回答
7694 浏览

python - 如何在python中获取文件关闭事件

在 Windows 7 64 位机器上使用 python 2.7。

如何获取文件关闭事件:

  1. 当文件在文件打开器的新进程中打开时(如记事本,写字板,每次在写字板的新进程中打开文件)
  2. 当文件在文件打开器的选项卡中打开时(如记事本++,它在新选项卡中打开所有文件但只存在一个记事本++运行的进程)

那么,如何在上述情况下获取文件关闭事件?是否可以通过通用代码实现上述情况?我正在处理不同的文件类型

0 投票
0 回答
278 浏览

python - 如何在python中捕获文件关闭事件

在 Windows 7 64 位机器上使用 python 2.7。如何获取文件关闭事件:

  1. 当文件在文件打开器的新进程中打开时(如记事本,写字板,每次在写字板的新进程中打开文件)
  2. 当文件在文件打开器的选项卡中打开时(如记事本++,它在新选项卡中打开所有文件但只存在一个记事本++运行的进程)

那么,如何在上述情况下获取文件关闭事件?是否可以通过通用代码实现上述情况?我正在处理不同的文件类型。

也可以通过这个方案来解决,当文件打开时,由某个进程处理。而当它关闭时,所有控制它的进程也会丢失。因此,我们可以知道文件是否已关闭。

我在这个问答中发布了这个并尝试了看门狗、pywatch 和 Watcher,但无法获得文件关闭事件

0 投票
2 回答
2025 浏览

c# - Detecting opening file (using c#)

Hello everybody and sorry if i duplicate question(my english so bad). Is there any way to be notified when files are opened by a user? Something like the FileSystemWatcher class, except with an "Opened" event? I just want detect opening file without changed or renamed this file. for example, now i detect renaming file and want detecting opening too

P.S. i hear some about filters and drivers, but i hope that c# have simple way for my request.

0 投票
0 回答
335 浏览

python - 如何使用python在mac osx上获取文件关闭事件

在 osx 10.9 上使用 python 2.7

如何获取文件关闭事件(当打开的文件被红色十字上方复选标记关闭时):

  1. 当文件在文件打开器的选项卡中打开时(如 TextEdit,它在新选项卡中打开所有文件,但仅存在一个 TextEdit 运行进程)
  2. 在文件打开器的新进程中打开文件时(不遵循选项卡属性的文件打开器)

那么,如何在上述情况下获取文件关闭事件?是否可以通过通用代码实现上述情况?我正在处理不同的文件类型。我尝试使用MacFSEvents看门狗,但没有收到文件关闭事件。

0 投票
2 回答
1088 浏览

python - 监视附加文件并在附加完成后执行一些操作

我创建了 2 个单独的脚本来抓取、抓取并将结果保存到 csv 文件,并将文件上传到我手动运行的保管箱。现在我想要的是在执行附加操作时监视 csv 文件,然后在附加操作结束后上传文件。任何人都可以给我一些想法或例子来做到这一点,因为我是新手。我看到了一个名为watchdog的包,但不知道如何使用它。

0 投票
1 回答
672 浏览

c++ - 监控日志文件时崩溃 (C++)

我正在阅读某个安装程序进程不断写入的日志文件。但是,在某些情况下,我会随机崩溃,原因如下:

我对此有几个问题-

1:如果您看到以下代码,我正在尝试处理阅读时发生的任何异常。那么为什么 EXCEPTION_ACCESS_VIOLATION_READ 没有被捕获并且程序崩溃了。

2:看起来它正在发生,因为安装程序在我读取文件的同时写入文件。wxTextFile 不允许我打开文件的模式。那么,如果我使用一些 C 函数并以 READ_ONLY 模式打开文件,还会发生这种崩溃吗?

以下是我的代码:

0 投票
2 回答
497 浏览

linux - inotify:事件报告的顺序是否与它们在文件系统中发生的顺序完全相同?

我正在使用inotify来监视各种分区(可能位于不同的硬盘上)上的各种目录。为了确保收集到某个时间点T之前发生的所有事件,我正在触摸我的主目录中的一个特殊文件并等待inotify报告此修改。收到此通知后,我能否确定我也收到了T之前所有修改的所有事件(所有目录和所有分区)?

0 投票
2 回答
5326 浏览

java - 观看服务和 Java EE 批处理

语境

我正在绘制一个将庞大的 PL/SQL 系统迁移到 Java 的解决方案。第一步是迁移一些 ETL 作业:

  1. 从多个 ftp / sftp 源读取 CSV、XML、(XLS,这是一个新要求)和位置文件
  2. 根据存储在数据库中的规则处理文件并将结果写入数据库表。

目前这是由几个存储过程和作业完成的。

我的公司愿意接受建议(如果它可以在 GlassFish 4 中运行并共享它的日志记录和连接池机制,以及管理控制台,那就太好了)。

我做了一些研究,以下选项引起了我的注意:

  1. Java EE 7 批处理,听起来很简单,特别适合 GlassFish 4。
  2. Spring Batch更加成熟,并且与 Java EE 7 标准(可能基于它)非常相似。
  3. Apache Camel听起来很强大,可以让我们免于大量摆弄诸如 Apache POI 之类的库,但它看起来也有些复杂。此外,我不确定它是否最适合这项工作(ETL 处理大文件)。
  4. 什么都自己煮。我可以创建一个应用程序客户端来运行 Quartz / Spring Scheduler 甚至 EJB Timers

虽然我仍然对建议持开放态度(建议会很好),但迄今为止最合适的似乎是 Java EE 7 批处理。

还有一件事,基础设施团队有一个解决方案,可以将文件从每个 ftp 源移动到本地目录,所以 FTP 真的不是问题。

问题

我已经阅读了一些关于 Java EE 批处理的教程,并且在所有这些教程中,某种ServletEJBTimer 负责启动作业:

我可以很容易地上传一个 web / ejb 项目并保持汇集变化。但我在考虑一个推送模型:

  1. 应用程序客户端控制台应用程序
  2. 主类监视新文件的目录
  3. 当有一个新文件时,它将开始一个新工作。

我的疑问是:

  1. 这种策略可行/可取吗?
  2. 我是否需要一个 JMS 队列或中间的某种生产者/消费者策略,还是应该只调用jobOperator.start每个文件并信任批处理层来管理应用程序资源?换句话说,如果一千个文件一次传送到我的文件夹并且我调用jobOperator.start了一千次,GlassFish 4 是否会进行某种智能排队,或者我应该创建某种门以便n同时运行多个作业?
0 投票
1 回答
3254 浏览

linux - 在循环中使用 select() 监视文件更改

我正在尝试编写一个程序,该程序将不断跟踪文件中的更改并相应地执行多项操作。我在循环中使用 inotify 和 select 以非阻塞方式跟踪文件修改。我的程序的文件跟踪部分的基本结构如下。

我检查了选择手册页并在每次 select() 返回时重置 fd_set 描述符。但是,每当我修改文件 (input.txt) 时,这段代码就会无限循环。我使用 inotify 和 select 的经验不是很丰富,所以,我确定问题是否出在我使用 inotify 或 select 的方式上。我将不胜感激任何提示和建议。