FIFO应用:LOG日志系统的实现
FIFO通信应用
- LOG日志系统
- 各个进程往FIFO管道写入数据
- 守护进程使用FIFO接收各个进程的输出日志信息
- 并将FIFO中的数据写到对应的日志文件中
- 将FIFO中的数据写入日志文件
- 1. 创建FIFO管道
- 2. 初始化一个数据缓冲区
- 3. 新建日志文件
- 4. 往文件里面写入数据
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
#include <sys/types.h>
#include <sys/stat.h>
#define handle_error(msg) \
{perror(msg);exit(EXIT_FAILURE);}
#define FIFO_SERVER "fifo_log_server"
#define LOG_PATHNAME "/var/log/process.log"
int main(int argc, char *argv[])
{
mkfifo(FIFO_SERVER, 0664);
char public_buf[100];
int fifo_fd;
fifo_fd = open(FIFO_SER