stat -- 3




概述分析访问日志是服务端监控系统的最常见工作,所以这里先学习一下怎么监控文件文件监控是通过流事件实现的,Logstash 使用一个叫 FileWatch 的 Ruby Gem 库来监听文件变化这个库使用完整路径记录 .sincedb 文件来跟踪被监听日志文件的当前读取位置,因此不会漏掉数据sincedb 文件中记录了每个被监听的文件的 inode, major number, minor number 和 pos 配置参数Logstash file 配置参数参数类型必须默认值意义add_fieldhash否{}为事件添加字段codeccodec否"plain"处理输入文本的方法名delimiterstring否"\n"分隔符discover_intervalnumber否15检测路径中新文件间隔时间excludearray否无不监控的文件patharray是无监控的文件或路径sincedb_pathstring否无sincedb 文件存储位置sincedb_write_intervalnumber否15刷新 sincedb 文件时间间隔start_positionstring("beginning" 或 "end"
#技术帖    #龙潭书斋    #file    #stat   
普通文件用于存储用户指定的信息,分为ASCII文件和二进制文件 目录文件包含目录下文件的名字及指向这些文件的指针,任何具有读权限的进程都可以读目录文件,但只有内核可以直接写目录文件,进程只有使用指定函数才可以更改目录文件 块特殊文件这种文件类型提供对设备带缓冲的访问,每次访问以固定长度为单位 字符特殊文件这种文件提供对设备不带缓冲的访问,每次访问长度可变,系统中所有设备要么是字符特殊文件,要么是块特殊文件 FIFO这种类型文件用于进程间通信,又是也将其称为管道 socket也称为套接字,用于进程间网络通信,也可用于在一台宿主机的进程间非网络通信 符号链接指向另一文件 文件类型宏 <sys/stat.h> S_ISREG ( )    普通文件S_ISDIR ( )    目录文件S_ISCHR ( )    字符特殊文件S_ISBLK ( )    块特殊文件S_ISFIFO ( )   管道或F
#读书笔记    #技术帖    #linux    #unix   
函数原型int stat(const char *path, struct stat *buffer); int fstat(int fd, struct stat *buf); int lstat(const char *path, struct stat *buf);  函数说明:定义于unistd.h中,stat结构体定义于sys/stat.h头文件中 一旦给出pathname,stat函数就返回与此命名文件有关的信息结构。fstat函数获取已在描述符fd上打开的文件的有关信息lstat函数类似于stat函数,但是当命名的文件是一个符号链接时,lstat返回该符号链接的有关信息,而不是由该符号链接所引用的文件的信息 第二个参数都是buf,是一个指针,它指向一个用户必须提供的结构,这些函数填写由buf指向的结构,该结构可能因为不同的实现会有所不同,但基本形式是:struct stat {   dev_t st_dev; /* 文件所在设备的标识 */   ino_t st_ino; /* 文件结点号 */   mode_t st_mode; /* 文件模式,文件、目录等 */   nlink_t st_nlink; /* 硬连接数 */ uid_t st_uid; /* 文件用户标识 */   gi
#读书笔记    #技术帖    #linux    #unix   



京ICP备15018585号