Programming/node.js2019. 2. 22. 10:47

이것저것 찾다가 그냥 express 엔진에서 제공하는거 있길래

그걸 변형해서 사용함

github에서는 morgan 이라는 이름으로 쓰는데

express --ejs로 생성한 템플릿에 적용하려니 logger라는 이름으로 있어서 그걸 사용하여 추가함

(당연히?) 해당 프로젝트의 /log 디렉토리를 생성하여 주어야 한다.

(파일은 자동 생성됨)


var logger = require('morgan');
var fs = require('fs')
var path = require('path')

var app = express();

// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');

var accessLogStream = fs.createWriteStream(path.join(__dirname, 'log/access.log'), { flags: 'a' })
app.use(logger('dev'));
app.use(logger('combined', { stream: accessLogStream }))

[링크 : https://github.com/expressjs/morgan]


+

[링크 : https://www.npmjs.com/package/access-log]

[링크 : https://www.npmjs.com/package/apache-log2]


+

2019.02.23


일단은 webalizer를 통해서 정상적으로 로그 수집이 되는 것을 확인했음

'Programming > node.js' 카테고리의 다른 글

wysiwyg editor / node.js  (0) 2019.02.26
node.js 파비콘 설정하기  (0) 2019.02.22
express ejs  (0) 2019.02.20
pug include / ejs include  (0) 2019.02.20
node_modules include  (0) 2019.01.29
Posted by 구차니
프로그램 사용/nfs2019. 2. 22. 08:17

nfs 에서도 sparse file을 지원은 하는데 NFS v4.2 이후부터라고

NFS V4.2 ? Feature

● Sparse File Support ? Sparse files are ones which

have allocated or uninitialized blocks in the file.

(1.4.3)

● SEEK - Find the Next Data or Hole

● NFS: Implement SEEK (Sep 2014)

● READ_PLUS - READ Data or Holes from a File

● No published upstream patches yet

● Prototype patches improve performance with reading holes

(See Anna’s keynote graph).  

[링크 : https://events.static.linuxfound.org/sites/events/files/slides/Vault2017.pdf]


특정 버전으로 제한하는 법은 아래와 같은데 소수점 버전은 없네?

To specify NFS version, use -o option


# mount -t nfs -o vers=4 192.168.1.10:/mnt/data /data

or

# mount -t nfs -o vers=3 192.168.1.10:/mnt/data /data 

[링크 : https://computingforgeeks.com/configure-nfsv3-and-nfsv4-on-centos-7/]


버전 확인하기

근데 여전히 소수점 버전은 확인이 불가능 하다.

 nfsstat

[링크 : https://unix.stackexchange.com/questions/115918/how-to-determine-if-nfs-mount-is-mounted-as-v3-or-v4]

'프로그램 사용 > nfs' 카테고리의 다른 글

rootfs 와 nfs-server  (0) 2019.07.17
svc: failed to register lockdv1 RPC service (errno 111)  (0) 2015.02.10
nfs mount 시 옵션들  (0) 2012.12.11
mount.nfs: access denied by server while mounting  (0) 2012.06.08
showmount  (0) 2012.06.08
Posted by 구차니

느낌은 화요일쯤 되는데..

벌써 목요일이라니.. -_-

Posted by 구차니
Programming/web 관련2019. 2. 20. 20:06

css나 js등을 전송하다 보면 아무래도 작은 파일들로 나눠어서 효율이 떨어지는데

그런걸 하나로 묶어서 보내주도록 빌드(?)하는 그런 도우미 프로그램

[링크 : https://webpack.js.org/]


쓰는 법은 나중에 좀 봐야겠네..

그래서 요즘 웹 페이지들이 node.js 나 javascript 기반이라도 빌드를 하는 거였나?

[링크 : https://meetup.toast.com/posts/153]

[링크 : http://blog.jeonghwan.net/js/2017/05/15/webpack.html]

'Programming > web 관련' 카테고리의 다른 글

ECDHE?  (0) 2019.04.26
css position  (0) 2019.03.28
ajax bearer token header  (0) 2019.02.07
webGL vs SVG  (0) 2019.01.07
w3c validator  (0) 2018.12.10
Posted by 구차니
Programming/react.js2019. 2. 20. 20:04

react.js로 node.js 상관없이(?) 단독으로 프로젝트 생성해서 하는걸 보다가

node.js 로 생성된 프로젝트에 react.js를 추가하는걸 찾는 중

[링크 : https://github.com/velopert/react-express-hmr-example?files=1]

[링크 : https://velopert.com/1552]


(당연하지만) react 쪽은 javascript로 작성하고

node쪽에서는 단순히 react로 의해 생성되는 bundle.js를 script를 통해 불러오면 끝


react.js는 backend와 연결이 없는 단순 frontend 뷰 엔진이다 보니

그런식으로 구현이 가능 한 듯 하다.

'Programming > react.js' 카테고리의 다른 글

react.js + bootstrap?  (0) 2019.02.10
react store / flux pattern  (0) 2019.02.01
react.js context, component thru  (0) 2019.02.01
react import {}  (0) 2019.01.31
react html to jsx  (0) 2019.01.29
Posted by 구차니
Programming/node.js2019. 2. 20. 19:13

express 엔진의 기본값으로 보이는 ejs는 왜 도움말이 없냐..

문법들좀 보려고 하는데 도움을 안주네


그러고 보니. pug도 새로운(?) 문법으로 보였는데

ejs는 html과 동일하지만 실제로는 렌더링 언어였던 거니까

결국에는 pug 보다는 성능이 좀 나을지 몰라도 여전히 static page로 간주하진 않는다고 봐야하려나?

[링크 : https://www.npmjs.com/package/ejs]

'Programming > node.js' 카테고리의 다른 글

node.js 파비콘 설정하기  (0) 2019.02.22
node.js apache 스타일 로그  (0) 2019.02.22
pug include / ejs include  (0) 2019.02.20
node_modules include  (0) 2019.01.29
npm npx yarn bower  (0) 2019.01.28
Posted by 구차니
Programming/node.js2019. 2. 20. 18:59

pug대신 ejs를 써보는데

문득 무슨차이가 있나 궁금해지네..


둘다 include는 지원한다. 정도만 확인인가.. ㅠㅠ

[링크 : https://pugjs.org/language/includes.html]

[링크 : https://stackoverflow.com/questions/5404830/node-js-ejs-including-a-partial]

'Programming > node.js' 카테고리의 다른 글

node.js apache 스타일 로그  (0) 2019.02.22
express ejs  (0) 2019.02.20
node_modules include  (0) 2019.01.29
npm npx yarn bower  (0) 2019.01.28
node-red rpi 접속  (0) 2018.12.20
Posted by 구차니
프로그램 사용/squid2019. 2. 19. 23:56

프록시 설정하려면 귀찮은데

그걸 해소하기 위한 방법으로 게이트웨이 아이피에다가 proxy 까는 것 처럼

클라이언트 측의 설정 없이 프록시 하는 법을 찾는 중


[링크 : https://www.cyberciti.biz/tips/linux-setup-transparent-proxy-squid-howto.html]

[링크 : https://linuxtechlab.com/squid-transparent-proxy-server-complete-configuration/]


+

방화벽에서 걸러서 프록시로 던져주는 것이 컨셉인듯

[링크 : https://blog.naver.com/kazami20/56490157]


이제 웹브라우저의 도구 -> 인터넷 옵션 -> 연결 -> 랜설정 -> 사용자랜에 프록시 사용을 체크한뒤

자신의 리눅스 프락시로 ip주소를 적고 포트를 3128로 지정해주고 인터넷을 하면

이제부터 보이는 웹 사이트 화면은 먼저 프락시에서 페이지를 읽어온뒤에 윈도우 웹브라우저로

보여지는것이다.

이와 같은 브라우저에서의 프락시 설정을 하지 않고 사용하고 싶을때 패킷필터 방화벽설정을

하여서 80포트로 가는 패킷을 3128번 포트로 리다이렉트하는 방법이 있다.

이것을 Transparent Proxy(투명 프락시)라고 하는데 이것을 설정하는 것은 쉬우며

젤 아래에 설정을 추가할 부분을 추가한다.


------------ Proxy mode 로 사용시 설정 끝 -----------------------------


squid데몬 스타트

/etc/rc.d/init.d/squid start



--------------------- 투명 프락시 사용할시 ---------------------------


투명 프락시를 사용할 경우에는 내부 네트워크(192.168.0.0)가 필요하고

공인 아피를 가진 리눅스가 한대 있다고 가정하고 이 리눅스에는 랜카드가 두개 있어야한다.

즉 리눅스 gateway서버로 돌아가는 리눅스가 한대 필요하다. gateway설정은 kldp를 참조하라.

gateway설정은 잘 되어있다고 보고

아래와 같은 설정을 게이트웨이의 iptables룰에 추가한다.


혹시 모르므로 아래같은 마스크레이드 룰이 적용 안되었다면 적용해라


iptables -t nat -A POSTROUTING -p TCP -s 0/0 --dport 21 -j MASQUERADE

iptables -t nat -A POSTROUTING -p TCP -d 0/0 --dport 20 -j MASQUERADE

iptables -t nat -A POSTROUTING -p TCP --dport 25 -j MASQUERADE

iptables -t nat -A POSTROUTING -p TCP --dport 110 -j MASQUERADE

iptables -t nat -A POSTROUTING -p TCP --dport 22 -j MASQUERADE

iptables -t nat -A POSTROUTING -p TCP --dport 23 -j MASQUERADE


echo "###################################################################################"

echo "###                Transparent Proxy with Squid                  ###"

echo "### iptables -t nat -A PREROUTING -p TCP --dport 80 -j REDIRECT --to-port 3128  ###"

echo "###################################################################################"



그리고 squid.conf에 다음의 설정을 추가한다.


httpd_accel_host virtual

httpd_accel_port 80

httpd_accel_with_proxy on

httpd_accel_uses_host_header on 

[링크 : http://coffeenix.net/board_view.php?cata_code=0&bd_code=129&bpage=]

Posted by 구차니

어쩐지 오늘따라 딴짓하고 싶더라니... (응?)




+1

덧붙이자면 RAID0로 HDD 6개가 물린 볼륨이고

저번달 부터 먼가 쇠긁는 띠낑띠낑 하는 소리가 나서 어떤 놈인지 못 찾고 있었는데

오늘에서야 predictive failure 뜨면서 경고 수준의 알림이 울린 상황


+2

덧붙이자면 저 7번 드라이브가 누군지 고민때리다

패널을 보니 숫자 화살표로 표시되어서 어이 벙벙


+3

좀 더 덧붙이자면 7번 드라이브에 경고 주황색이 깜박깜박

-0- (아까 하던 내 고민은?!?!)

Posted by 구차니
하드웨어/RAID2019. 2. 19. 12:52

nested level의 RAID는 당연한 거긴 하지만..

망할(?) span 이라는 용어가 나오는데


RAID 1+0 에서

RAID0는 속도를 위해 묶이므로 안정성이 꽝이라

안정성을 보강해주기 위해 RAID0에 묶일 볼륨을 RAID1으로 미러링 해주는 구성이 된다.

그리고 안정성을 위한 span이 raid 1으로 묶이게 되고(그래서 RAID 1+0에서 1이 먼저)

용량과 속도를 위해 RAID1들을 RAID0으로 묶게 된다.


 Spanned RAID levels Spanning is a term used to describe the way in which RAID levels 10, 50, and 60 are constructed from multiple sets of basic, or simple RAID levels. For example, a RAID 10 has multiple sets of RAID 1 arrays where each RAID 1 set is considered a span. Data is then striped (RAID 0) across the RAID 1 spans to create a RAID 10 virtual disk. Similarly, RAID 50 and RAID 60 combine multiple sets of RAID 5 or RAID 6 respectively with striping.  

[링크 : http://hg.flagshiptech.com/ebay/DellManuals/rc_h310_h710_h710p_h810_ug_en-us.pdf]

[링크 : https://www.dell.com/community/PowerEdge-HDD-SCSI-RAID/RAID10-and-spans/td-p/4666979]

'하드웨어 > RAID' 카테고리의 다른 글

RAID5가 전가의 보도는 아니었구나.. 라는 실망  (2) 2019.02.24
raid 특성인가?  (0) 2019.02.22
R730 PERC RAID-0 vs RAID-5  (0) 2019.02.15
R730 RAID5 성능 테스트(?)  (0) 2019.02.13
PowerEdge RAID Controller - PERC  (0) 2019.02.12
Posted by 구차니