일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- install
- 설치
- python
- 윈도우
- 자바
- 파이썬
- hamonikr
- javascript
- 설정
- postgres
- DATABASE
- 하모니카
- 우분투
- DB
- Windows
- 3.0
- 데이터베이스
- script
- PostgreSQL
- 리눅스
- node
- JS
- 자바스크립트
- Atlassian
- ubuntu
- 아틀라시안
- 노드
- 스크립트
- java
- Linux
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