1 #include <file_writer.h>
9 file_writer::file_writer(const char * filename): stream_writer(nullptr) {
10 FILE *fp = fopen(filename, "a");
12 std::string error_string = "[iris] failed to open log file <";
13 error_string += filename;
14 error_string += ">, reason: ";
15 error_string += strerror(errno);
19 m_fd = fileno(m_stream);
22 file_writer::~file_writer() {
23 if (m_stream == nullptr)
30 void file_writer::write(const char * buffer, size_t len) {
33 size_t written = ::write(m_fd, buffer + offset, len);
37 fprintf(stderr, "[iris] error, should write %lu byts, only %lu bytes written, reason: %s.\n", len, written, strerror(errno));