'2014/07'에 해당되는 글 3건

  1. 2014.07.12 텍스트 프로세싱
  2. 2014.07.07 율이의 일상 14개월
  3. 2014.07.01 뉴스룸, 9/11 , 빈 라덴

이번에 Project를 진행하면서 특정 기간동안의 특정 도메인 TRAFFIC 정보를 GATHERING 한 후
TRAFFIC CUT-OVER 이후에 CUT-OVER 이전의 TRAFFIC에서 찾을 수 없는 CASE를 추출하는 SHELL을 작성해야 하는 상황이 발생하였다.

결국 특정 기간의 TRAFFIC 정보를 분석해서 MASTER 파일을 작성한 후 CUT-OVER 이후의 로그 파일과 이를 비교해야 하는 SHELL 이었다.

우선 진행해야 하는 건 로그 파일을 뒤져서 URL이 특정 도메인으로 시작하는 데이터를 가져오는 일이 었다.

일단 로그파일에서 특정 도메인 정보를 가져오는 건 비교적 쉬웠다.

egrep --file=<PATTERN_FILE>-i <LOG 파일들> | cut -d^ -f2,5,6

'^'를 구분자로 가지는 <LOG 파일들>에서 <PATTERN_FILE>에 지정된 문자열을 가지는 데이터를 가져와서 2,5,6 필드들을 가져오는 구문이었다. 이때 egrep의 -i 옵션을 사용하여 case insensitive 하게 처리 하도록 했다.

다른 필드 값들에 있는 케이스를 무시했었는데, 데이터를 보다보니 PATTERN에 있는 도메인 정보가 다른 필드에서도 사용되는 case도 있고, 도메인이 TEST 같은 간단한 경우는 URL 내의 다른 정보에서도 나오는 것이 아닌가.

결국 아래와 같이 egrep을 한 데이터를 다시 egrep 하도록 하였다.

egrep --file=<PATTERN_FILE>-i <LOG 파일들> | cut -d^ -f2,5,6 | egrep --file=<PATTERN_FILE> -i

이렇게 하니 로그 데이터를 모을 수 있었는데, 2번째 필드의 경우는 다시 ','로 세부 필드가 또 구분되게 되어 있다.

결국 tr로 모든 ','를 '^'로 변환하여 2번째 필드 안의 세부 필드들도 다음 프로세스에서 사용할 수 있게 하였다.

결국 아래와 같이 LOG 데이터를 1차 가공 파일로 저장하도록 SHELL을 작성하였다.

egrep --file=<PATTERN_FILE>-i <LOG 파일들> | cut -d^ -f2,5,6 | egrep --file=<PATTERN_FILE> -i | tr -s ',' '^' >> ${LOG_DATE}_site_log.txt

이 site_log파일에 있는 내용을 가지고 실제 TRAFFIC URL을 가져오는 코드를 작성해야 하는데, sort 와 uniq를 사용하니 간단히 해결 됐다.

awk '{FS="^"} {print $2"@"$5}' ${LOG_DATE}_site_log.txt | sort | uniq -c > ${LOG_DATE}_traffic.txt

먼제 awk로 2번째와 5번째 필드 문자열을 @를 연결자로 합치고, ( 즉 <2번째 필드>@<5번째 필드> ) 이 값을 가지고 sort와 uniq를 진행하니 ,

발생횟수 <2번째 필드>@<5번쨰 필드> 형태의 데이터를 가지는 TRAFFIC 정보 파일이 작성 되었다.


흠.. 그런데 생각해보니 EMPTY case 정보도 필요 할 듯 하여 3번째 필드가 0인 case의 EMPTY LOG를 EMTPY TRAFFIC 정보 파일에 저장하는 아래 SHELL도 작성하게 되었다.
awk -F'^' 'BEGIN {OFS="^"} {if ($3 == "0" ) print $2"@"$5}' ${LOG_DATE}_site_log.txt | sort | uniq -c > ${LOG_DATE}_empty_traffic.txt


처음에는 위 파일들을 MASTER 파일로 사용하려 했는데, 좀더 진행해 보니 날짜 별로 조금씩 트랙픽이 틀려져서 위 파일을 마스터 파일을 쓸 수가 없었다. 결국 날짜별 site_log 파일을 가지고 MASTER 파일을 만들어 내어야 하는데 나중에 처리할 떄 대/소문자 이슈를 없애기 위해서 전체 날짜별 TRAFFIC 파일들 CONCATE 시킨 후 모든 데이터를 소문자로 바꾸어 위와 동일한 Process를 통해 master 파일을 작성할 수 있었다.

for f in *_site_log.txt
do
        awk '{FS="^"} {print $2"@"$5}' ${f} | sort | uniq >> ${TMP}
        echo "$f file"
done

cat ${TMP} | tr '[:upper:]' '[:lower:]' | sort | uniq > ${마스터파일}

tr '[:upper:]' '[:lower:]' 이부분이 대문자를 소문자로 변환해 주는 파일이다.


이제 마지막으로 다른 로그 파일을 가져와서 마스터 파일에 있지 않은 TRAFFIC 정보를 추출해야 한다.
즉 마스터 파일과 join을 한 후 join 되지 않는 데이터를 가져와야 하는데 이 걸 라인단위로 읽어서 마스터 파일과 비교하는 SHELL을 짜려니 만만하지가 않다.

구글링을 해 보니 딱 나에게 필요한 기능의 SHELL COMMAND가 있다.

comm -23 <로그파일> <마스터파일> > <최종파일>

comm는 두개의 sort된 파일을 가지고 JOIN을 해서 결과를 추출해 주는데

이때 -1, -2, -3 과 같이 옵션을 주면

-1 은 왼쪽 ( <로그파일>) 결과만 있는 부분을 제거 - Right outer join과 유사 )
-2 는 오른쪽 ( <마스터파일> ) 결과만 있는 부분을 제거 - Left outer join과 유사 )
-3 는 양쪽에 모두 결과가 있는 부분을 제거 하게 되어 있다.
따라서 -23을 하게 되면 마스터파일에 결과만 있는 경우와, 양쪽 모두에 있는 부분을 제거 하게 되니, 마스터 파일에 등록되지 않은 Traffic 정보를 가지는 로그 데이터 만을 출력하게 되는 것이다.


처음에는 이런 걸 어떻게 개발하나 했는데, 기존에 다른 사람이 개발한 거랑, 구글링의 힘들 빌렸더니 결국 거의 원하는 결과를 추출해주는 SHELL을 작성할 수 있었다.

이렇게 개발해 놓고 나니, 지금 내가 개발해 놓은 로그 분석툴의 CONCURRENT CHECK 부분을 DB 에서 할필요가 없지 않았나 하는 생각이 든다.

이젠 너무 DB만 쓰지 말고 이렇게 SHELL 로 할 수 있는 부분은 SHELL로 많이 처리 해야 할 듯 싶다.

Posted by headiron
,


야.....여름이다

율이가 맞는 두번째 여름...
작년 여름은 덥지 않아 수월하게 지나갔는데..
올해는 어떨찌 모르겠다...

어쩃든.. 여름이 왔으면 해변은 가야하는게 인지 상정..
우리 율이는 이렇게 예쁜 모자를 쓰고... 해변으로 출발...


처음가는 해변이라.. 어떨지 몰라 이것저것 다 준비 해서 갔었는데..

복병은.. 예상보다도 훨씬 추운 날씨 였다..







바닷가에 처음온 율이는 파도가 너무 재밌는지.. 바닷물에서 나오려 하지를 않았다.
율이가 너무 좋아해서 오랬동안 두고 싶었지만..
너무 추워해서.. 결국 때쓰는 율이를 모래사장으로 대려올수 밖에 없었다.




물놀이가 안되니... 모래 놀이라도..
뭐.. 없는 말 보태서.. 집에 있는 살림 가다져 가서 .. 부족한건 없었는데..
날씨도 너무 추운데.. 찬물로 샤워를 하게 되어 율이가 감기 걸릴까 걱정이었다.

혹시나.. SPG 포인트로 쉐라톤 에서라도 자고 갈까 했는데... SOLD OUT.

집사람은 다음번에는 꼭 호텔 예약하고 가잖다...

추운 몸을 좀 녹여 볼까 싶어서 스타벅스 찾으러 타지마할에 들어 갔다가
여지껏 먹어본 최악의 부페를 먹고.. ( 뭐.. 덕분에 율이가 좀 따뜻한 음식을 먹어선지 상태가 좋아졌다.)
보드워크 보면서 한컷..
오늘의 교훈은 호텔에 있는 부페도 맛 없을 수 있다.. 그리고 싼게 비지떡이다...



집으로 고고싱 할려다가.. 보드워크에 있는 모래 모형을 보고 한 컷..

갠적으로는 오션시티가 더 좋은데.. 엄마는. 부자바다라고 애틀란타 시티를 더 좋아 한다.
전체적인 바다 뷰라든가 분위기는 좋은데..
애기가 있다 보니 시설이나.. 그런 부분이 좋은 애틀란타 시티를 좋아 할 수 밖에 없는 부분도 일리가 있다.

어쩃든.. 언제 또 바다를 가 볼까....

공원에 산책나가는데 갑자기 엄마가 율이와 차 앞에서 한컷...
흠.. 둘다 이쁘다...


아빠 목마 탄 율이..
예전에는 주로 Mondauk 공원이나.. 카펜더 공원을 자주 갔었는데..
우연히 알게 된 Upper Gwynedd Township 에 있는 공원이 주위에 있는 나무 덕분에 저녁에 그늘져서 시원해서 주로 그곳을 이용하게 되었다.
놀이터도 Castle 처럼 꾸며놓아 일명 Castle Park 라고 한다는데..
바로 옆에 수영장도 있고 해서... 올 여름의 우리 가족 아지트로 결정해 버렸다는..






우유 묻힌 우리 율이..



Zedai 코스프레 율이..
Force will be with you...















Mondauk 공원이 넓고 잔디 밭이 많아 좋은데..
결정적으로 야구장에서 야구나 소프트볼을 하는 사람들이 많아 잔디밭에서 놀기가 좋 그랬는데..
Castle park는 이렇게 잔디밭에서 맘껏 놀수 있어서 좋다..


산책로도.. 1 마일 정도 되서... Mondauk 못지 않은 크기를 자랑하는 우리 castle Park..






엄마가 운전을 시작해서.. 프리미엄 아울렛에서 선글래스를 샀는데.
내가 잠시 화장실에 간 사이 엄마가 율이한테 선글래스를 씨워봤나 보다...
아이 귀여워...























토욜날 밤에 Moonshot 작업때문에 거의 밤샘하고 피곤했는데..
오후에 집사람과 애기와 함께 castle Park 가서 비눗방울 놀이.. 공놀이를 했더니 피로가 싹 가신다..
아빠에게는. 우리 가족이 청량제예요...



회사에서 한참 일하고 있는데.. 집사람이 사진을 하나 보내온다..
일명 율라 로 불리는 우리 테디베어에게 기저기를 입혀서 율이랑 같이 재웠다는..
나같은 재미없는 엄마가 아니어서 참 다행이다..

아파트 농구장에서 오랜만에 농구공을 잡아 봤는데.. 역시나... 몸이... 못따라 가네...








여느때처럼 Castle Park에서 산책하는데.. 오늘따라 Ground hog와 토끼가 출연..
Ground Hog는 율이가 볼 새도 없이 바로 도망쳤는데..
다행이 토끼는 끝까지 있어 주었다..
덕분에 영화 같은 장면 한컷..
주연 율이.. 조연 토끼.. 제목은 누가 더 귀엽나...
뭐.. 아빠한테는 당연히 율이가 귀엽지... :-)









Castle Park에서 산책하다가 우연히 만난 인도인가족들과 한컷..
흠... 남자애가 나름 예쁘게 잘 생겼네..
뭐.. 그래도 우리 딸래미랑 비교할 수 없어요...




MeadowBrook 김씨 1대손 우리 율이는.. 오늘도 무럭무럭 잘 가라고 있다.
예쁘게 잘 자라줘서 고맙다 율아..

이번 여름 가기 전에... 바닷가에 또 놀러가자..





'사는이야기 > Claire' 카테고리의 다른 글

율이의 일상 16 17개월  (0) 2014.10.09
율이의 일상 15개월  (0) 2014.08.14
율이의 일상 13개월  (0) 2014.06.17
율이의 첫 생일  (0) 2014.05.24
율이의 일상 12개월  (0) 2014.05.24
Posted by headiron
,

율이가 태어나면서 시작된 나의 미드 탐독.
한국에선 스포츠는 중독되도록 보아도 드라마는 절대 중독되지 말자 였으나...
어차피 집안일 때문에 써야 하는 시간이라면 드라마 보면서 영어 공부하자는..

시작은 밴드오브브라더스, 그 다음은 브레이킹 배드, 이제는 뉴스룸이다.

마침 ISP를 Verizon에서 Comcast로 넘어 오면서 HBO가 공짜이니 이럴때 HBO 드라마들을 즐겨야지..

브레이킹 배드 같은 경우는 비교적 이해하기가 쉬웠는데,
뉴스룸은 대사들이 워낙 빨라 다 이해하기가 조금 어려운데..
어차피 여기서 살아야 하는데 저런 것도 이해해야지 하고, 이해 안가도 틀어서 본다.

어제 본 에피소드는 빈 라덴을 사살을 발표할 때의 상황을 묘사했다.
드라마에서도 보여주지만 그날 나도 ESPN에서 메츠와 필리스 게임을 즐기고 있었었다.
( Sunday Night Baseball 은 항상 한 경기만 ESPN에서 중계해 주고, 마침 우리 지역 팀이니 당연히 즐기고 있었지.)

야구 중계화면에 빈라덴을 사살했다는 소식을 듣고 환호하던 관중석을 보면서 좀 어리둥절 했는데,
드라마에서도 빈라덴 사살 소식을 접하며, 환호하고 기뻐하는 이들의 모습이 보여준다.
사실 다음날 회사나 우리 동네에서는 평소와 다름 없었는데..
( 내가 그렇다고 너무 외진 지역에 사는 것도 아닌데.. )

9/11 당시에 내가 한국에서 느꼈던 놀라움과 어의 없음과 미국 현지에서 느꼈던 공포는 달랐겠지만,
특히나 직접 적인 공격지가 됐던 뉴욕시민들이 그랬겠지만,
누구이던 간에 사람을 사살 시켰다는 뉴스에 환호를 보내던 미국인들을 보며 참 묘한 느낌이었다.

어쩌면 여러가지 비교하기는 어렵겠지만,
회사 워크샵을 가면서 접했던 김일성 사망 소식을 들으며,
주식 걱정, 예비군 소집걱정하던 우리 모습과는 조금 대비되기도 했다.
하긴 당시 동료 분들은 6/25를 겪지 못했지만, 당시 미국인들은 9/11을 직접 목겼했으니 그 차이는 좀 있었을 것이다.

어쨋든 빈 라덴 사살 소식에 환호하던 미국인들의 모습은,
내가 미국을 와서 이해해가던 미국인들의 모습과는 조금 다른 느낌이었다.
뭐.. 아직도 미국인들을 잘 이해하는 건 아니지만..

참 미국인들에게도 9/11은 잊을 수 없는 순간이지만, 우리 가족에게도 있을 수 없는 순간이다.
우리가 2010년 9/11에 결혼했으니..
미국에 오기 하고 급하게 결혼식을 준비하며,
추석을 피해서 잡았던 날짜가 하필 9/11...

마치 우리 나라에서 6/25일날 결혼한 거랑 같은 걸까..
뭐.. 그래도 결혼 기념일 Celebration 하는거에는 별 문제는 없다.


'사는이야기 > 미국생활' 카테고리의 다른 글

PA에서 집 사기  (0) 2016.08.12
한국에서 미국 송금 하기  (0) 2015.12.07
Verizon to Comcast  (0) 2013.12.02
3년 그리고 새로운 3년  (1) 2013.10.15
의약품 Refill  (0) 2013.08.10
Posted by headiron
,