答案1
SysInternals 进程监视器可能会对以下过滤器有帮助:
- 路径:(
databaseName.ldf
尽可能使用完整路径) - 手术:
WriteFile
测试结束后,您可以将其保存为 CSV 或 XML 以供评估。不幸的是,文件大小在详细信息列中,这是一个文本列,其中包含您不感兴趣的其他内容。由于日志文件可能会被附加,因此您需要自己计算总长度(偏移量 + 长度)。
凭借一些 C# 编码技能,您可以使用文件系统观察器。优点:您可以以最适合您的格式登录。缺点:未经测试的 Spaghetti 代码可能存在错误。
using System;
using System.IO;
namespace FileSizeChangeLogger
{
static class Program
{
static long lastSize;
static FileInfo file = new FileInfo(@"D:\temp\myfilename.txt");
static void Main()
{
lastSize = file.Length;
var watcher = new FileSystemWatcher {Path = file.DirectoryName};
watcher.Changed += OnFileChange;
while (true)
{
watcher.WaitForChanged(WatcherChangeTypes.Changed);
}
}
private static void OnFileChange(object sender, FileSystemEventArgs e)
{
if (e.FullPath.Equals(file.FullName, StringComparison.InvariantCultureIgnoreCase))
{
file.Refresh();
var newSize = file.Length;
if (newSize != lastSize)
{
Console.WriteLine(file.Length);
}
}
}
}
}