일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 파이썬
- java
- 자바
- 설정
- DATABASE
- 3.0
- 설치
- JS
- node
- 윈도우
- ubuntu
- 우분투
- 데이터베이스
- python
- 아틀라시안
- 하모니카
- Linux
- DB
- 노드
- 자바스크립트
- hamonikr
- 스크립트
- Windows
- script
- javascript
- PostgreSQL
- 리눅스
- install
- postgres
- Atlassian
Archives
- Today
- Total
LukeHan 의 잡다한 기술 블로그
javascript console.log 내용 저장하기 본문
반응형
const fs = require('fs');
const readline = require('readline');
// date and time
function getToday(){
let date_ob = new Date();
let year = date_ob.getFullYear();
let month = ('0'+(date_ob.getMonth() + 1)).slice(-2);
let date = ('0'+date_ob.getDate()).slice(-2);
return year + '-' + month + '-' + date;
}
function getTime(){
let date_ob = new Date();
let hours = ('0'+date_ob.getHours()).slice(-2);
let minutes = ('0'+date_ob.getMinutes()).slice(-2);
let seconds = ('0'+date_ob.getSeconds()).slice(-2);
return hours + ':' + minutes + ':' + seconds;
}
function getTimeMilli(){
return getTime() + '.' + new Date().getMilliseconds();
}
// logger
function fntLogger(level, data, option, setText){
let fd = fs.openSync('logs/js_'+getToday()+'.log', 'a');
try{
data = '['+getToday()+' '+getTimeMilli()+'] ['+level+'] ' + data;
fs.appendFileSync(fd, data + (undefined != option && null != option ? ' '+option.getInnerHTML() : '') + '\n', 'utf8');
if(null == setText) console.log(data, option);
else console.log('%c' + data, setText, option);
}catch(err){
}finally{
if(fd !== undefined) fs.closeSync(fd);
}
}
var logger = {
debug: function(data, option){
if(true == isDev) fntLogger('debug', data, option);
}
, info: function(data, option){
fntLogger('info', data, option);
}
, warn: function(data, option){
fntLogger('warn', data, option, 'color:orange; font-weight:bold; font-size: 13px;');
}
, error: function(data, option){
fntLogger('error', data, option, 'color:red; font-weight:bold; font-size: 15px;');
}
, fatal: function(data, option){
fntLogger('fatal', data, option, 'color:red; font-weight:bold; font-size: 18px;');
}
}
logger.debug('[debug]');
logger.info('[info]');
logger.warn('[warn]');
logger.error('[error]');
logger.fatal('[fatal]');
javascript 만 사용하여 구현하기는 어려워 node 를 사용하여 구현함
반응형
Comments