볼티모어 아쿠아리움에서 사온 돌고래 인형이 어느덧 우리 율이의 좋은 친구가 되었다.

지금도 가끔 피시피시 얘기하는 걸 보면 참 잘 다녀왔다는 생각이 든다.

평소 주말처럼 YMCA에 수영을 배우러 갔더니 산타 할아버지 사진 찍는 행사를 했다.수업을 끝나고 사진 찍어야지 했는데, 행사는 끝났고 사진 찍는 배경은 남아 놨기에 마침 받은 수료증을 가지고 한번 찍어 봤다.

올 겨울도 Longwood Garden  Lightening구경으로 GoGo... 

처음 봤던 작년 만큼은 덜 하지만 그래도 역시 참 멋있다는..



눈 오는 날에 필리 시내 레스토랑에 놀러 갔다가 소화도 시킬 겸 Love Park에서 사진 한 컷.
갈때마다 사람들이 많아서 몰랐는데 알고 보니 Love상이 벤자민 플랭클린 로드 방향으로 설치 되어 있었다.



이번 겨울도 어김없이 폭설이..
주말내내 일기예보 보느라 TV보고... 그리고 삽질..
남들은 군대서 하는 삽질을 나는 40이 넘어서 하고 있다니..-.-
나중에 집 사면 Snow blower를 꼭 사야지..

뭐.. 암만 4시간 동안 삽질 하는라 힘들어도 썰매 타는 즐거움을 빼먹을 수는 없지..

영미누나가 친구 편으로 보내주신 한국 어린이 책...
율이가 잘 읽고 인형도 너무 좋아해요. 매번 고마워요 누나




동네 몽고메리몰 놀이터... 겨울에 처음 알게 됐는데.. 비 오는 날은 자주 가게 된다.



날이 따뜻해 져서 찾아왔던 몬다욱 공원.
이젠 율이도 버블 놀이를 제법 잘 한다는...





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

2016년 여름 ( 세번째 여름 )  (0) 2016.08.18
세살 즈음에  (0) 2016.06.04
2살 그리고 몇 개월 즈음  (0) 2015.09.11
율이 2살 즈음..  (0) 2015.05.27
율이 2살 기념 Puerto Rico 여행  (0) 2015.05.05
Posted by headiron
,

몇 년동안 일하면서 항상 하고 싶었지만 해보지 못했던 일중에 하나가 RPM 파일을 만드는 거였다.

일단 시간도 없었고.. ( 게으르다고 해야 할 까 .. ) 그리고 개발쪽 관련 공부에 집중하다 보니..

근데 이번에 원준씨가 이직하면서 본의아니게 Cron시스템을 인수인계 받아 진행하다 보니 RPM을 만드는 일이 생겼다.

일단 PUPPET관련해서 작업 끝내고, SYSOPS가 시스템까지 구축해준 상태에서 최종 확인을 하다 보니 새로운 RPM을 설치하는 게 진행이 되지 않는 것이었다. 시스템 문제인가 생각했는데, 잠시 시간 날때 확인해 보니 내 PUPPET에 문제가 있었다.

그래서 PUPPET을 고치고 새로운 RPM을 설치해 보니 RPM은 설치 되었다고 나오는데 설치되어 있어야 할 파일들이 없다. PUPPET을 이리저리 바꿔보고 했는데도 되지 않고... 시간 만 보내고 있는데 불연듯 RPM이 잘못 된건 아닐까 생각이 든다.


그래서 spec파일을 검토해 보고 googling을 해보니 아래 article이..

내용은 RPM에서 spec파일에 선언되어 있는 명령문들은 아래 순서 대로 실행된단다.
 1. %Pre of new package
 2. %Post of new package
 3. %Preun of old package
 4. %Postun of old package
http://stackoverflow.com/questions/7398834/rpm-upgrade-uninstalls-the-rpm

마침 나는 api spec파일을 copy하면서 Postun섹션을 넣었는데... 이게 실행이 되면서 설치 폴더들이 다 지워 지는 것이었다.api는 multi version을 위해서 rpm설치할 때 해당 version을 폴더 경로에 넣어서 uninstall도 하지 않지만 하더라도 해당 버젼 폴더만 지우니 문제가 없는 것이었다. 

나도 지금이라도 버젼을 넣어서 처리 할 까 생각하다가 어차피 자바로 포팅하기 까지만 지금 구조로 갈꺼니깐 없어 진 파일 패키지에 남아 있다고 해서 큰문제는 생기지 않을 듯 싶다.

흐미... SPEC파일에 대해서 조금만 봤어도 하지 않았을 실수 때문에 거의 하루를 날려버리게 되다니..

COPY를 하더라도 정확히 이해하고 해야지.. 그리고 다음에는  RPM만들떄 꼭 버젼을 고려해야 겠다.

결국 %Postun을 없애고 나니 RPM삭제이후에도 파일들은 시스템에 남아 있게 되는거 아닌가...


Posted by headiron
,

그동안 주로 EJB로 개발하다보니 Mockup테스트를 알고 있으면서도 사용하지 못했었는데 Cron Project를 진행하면서 사용하게 되었다. 알고 있는지는 10년은 된것 같은데 이제서야 쓸 생각을 하다니..

일단 시작은 Mockito를 사용해서 Mock객체를 생성해서 테스트를 진행해 보았다.

http://mockito.org

쓰는 방법은 간단했다.

mock(new ObjectO))를 실행하면 헤당 Object의 method를 실행할 수 있는 Mock객체가 생성된다. 

그 후에 when()등의 메소드를 사용하여 특정 메소드가 호출 될 경우 특정 결과를 Return하게 하도록 한후,

해당 Mock객체를 실제 객체에 Wiring하고  

객체 메소드를 호출하면 Mockup객체에 등록된 메소드에 따라 결과가 Return되고, 이를 통해서 실제 객체가 잘 실행되는지를 확인하게 되는 것이다.


처음 Mock을 사용할 때 when()메소드로 선언하는거 이외에는 원래 객체의 메소드를 호출하는 걸로 오해하고 진행을 해 보니  Mock객체는 객체의 메소드들을 가지고 있는 정말 Mockup객체일 뿐이었다.

특정 메소드 이외에 다른 메소드는 원래 코드를 실행하게 하기를 원할 경우는 mock()이 아닌 spy()를 사용해야 한다.


마침 내가 개발하는 코드가  Method가 여러개이지만,  각 Method가 다른 API를 호출하는 형태에서 API호출하는 부분을 별도의 private  메소드로 추출했고, 해당 부분을 spy() 하게 되면 외부 API를 사용하는 코드도 테스트 할 수 있게 될 듯 했다.

근데 문제는 Mockito는 private메소드에 대해서는 spy()를 진행할 수 없었다.

그래서 Search를 해보니 PowerMockito를 사용하면 private 메소드를 spy()할 수 있다고 한다.

일단 pom.xml에 PowerMockito dependency를 등록하고, 

<dependency>
<groupId>org.powermock</groupId>
<artifactId>powermock-api-mockito</artifactId>
<version>1.6.3</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.powermock</groupId>
<artifactId>powermock-api-easymock</artifactId>
<version>1.6.3</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.powermock</groupId>
<artifactId>powermock-module-junit4</artifactId>
<version>1.6.3</version>
<scope>test</scope>
</dependency>

import org.powermock.api.mockito.PowerMockito;
...

@

Connector mockConnector = PowerMockito.spy(connector);

....

@Test

public void testThirdPartyConfig(){

PowerMockito.doReturn(configJsons).when(mockApiConnector, "list",
"thirdparty-config", queryParam);
FacebookConfig config = mockConnector.getThirdPartyConfig();

참고로 내가 테스트 하려는 코드를 connect.getThirdPartyConfig 메소드이고, getThirdPartyConfig는 connect.list("thirdparty-config",queryParam) 메소드를 호출하여 외부 API를 호출하고, 그 결과를 파싱해서 사용자에게 객체로 리턴해준다.따라서 list메소드를 spy하면 외부 API를 호출하지 않고 getThirdPartyConfig메소드가 잘 실행되는지 확인할 수 있는 것이다.


잘 되기는 하는데 private메소드에 대해서는 좀 이상하게 실행이 되어서 Abstract메소드를 protected로 변경했더니 잘 싱행이 된다. 

그리고 진행을 하다 보니 PowerMockito가 Mockito를 사용하는 Test보다 훨씬 느리다.

서치를 해보니 내부적으로 객체 생성을 많이 한다고, 가능하면 Mockito를 사용하라는 걸 보니 , 이게 좀 문제 인듯 하다.


성능 부분을 제외한다면, PowerMockito가 꽤 괜찮은 솔루션으로 보인다.




'개발자세상 > 자바세상' 카테고리의 다른 글

POI로 Pivot테이블 만들기  (0) 2017.11.28
Scala  (2) 2016.06.16
java.lang.OutOfMemoryError: unable to create new native thread  (0) 2015.08.15
Control character in XML  (0) 2014.05.28
jboss db pooling timeout  (0) 2014.03.01
Posted by headiron
,
열흘 간의 윈터 브레이크를 가족과 즐기며 파란 만장 했던 2015년을 마무리 해본다.

올해를 시작하면서 OAS acquision이 이렇게 많은 일을 겪게 할 줄은 미쳐 예상하지 못했는데...

연초부터 본의아니게 팀장 아닌 팀장역활을 하다가... 다시 팀원으로 강등..

그리고 다른 부서로의 Transition.

덕분에 8년 넘는 시간을 함께 했던 OAS 와는 작별을 고하게 되었고, 다시 PHP로 돌아 갔지만,

Continuous Delivery, Scala, Play, Puppet등 그 동안 해보지 못했던 많은 것들을 새롭게 해 볼 수 있게 되었다.

일주일에 이틀간 뉴욕에서 일하게 되면서, 집 사람은 조금 힘들었지만, 

덕분에 나는 공부할 수 있는 시간을 많이 가질 수 있게 되었다. 

뭐... 5일 정도 무료로 숙박할 수 있는 호텔 포인트는 그에 대한 보상이라고나 할까..


생각해 보니 미국에서 지낸 5년 동안 한국 다녀오는 것 말고는 여행을 못 했었는데,

올해는 푸에르토리코, 워싱턴도 다녀오며 

좀 힘들었어도 나름 즐거운 추억들을 만든 것 같다.


2016년은 어떤 일들이 나를 기다릴 지 모르겠으나,

적어도 지금보다는 좀더 나의 Spectrum도 넓어 지고, 

우리 식구 행복하게 살 수 있는 보금자리와 이제는 미국 밖의 새로운 곳을 경험해 보는 그런 한해가 되었으면 한다.


아디오스 2015


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

2017년 후반기  (0) 2018.01.03
Past 10 years, Next 10 years  (0) 2017.10.27
RIP N1, Good bye OAS  (0) 2015.09.04
부활  (0) 2014.04.21
재준이 침대  (1) 2013.03.18
Posted by headiron
,

집을 구매하려고 한국에 있는 돈을 가져오려고 은행 콜센터에 확인해 보니 

이건 뭐...한국에서 해외 송금하는게 무척 복잡하다.

1. 일반 송금

개인의 경우 매년 ( 1월 1일 ~ 12월 31일 ) 5만불까지 송금 할 수 있다고 한다.

총 5만 불이지만, 건당 1만 불 까지가 한도라고 한다. 그리고 이 돈이 부동산 구매에 사용될 경우 문제가 생길 수 있다고 한다.

2. 해외 이주 예정자 

1년 이내에 영주권을 취득할 예정인 경우 해외 이주비용을 미리 송금 할 수 있다.

이 경우에는 외교통상부에 해외 이주 신고 확인서를 발급 받아야 하고, 이 경우에는 주민등록이 말소 된다.

그리고 이를 위해서는 영주권 업무를 진행하는 기관에서 영주권 신청 상황과 취득에 대한 문서를 발급받아야 한다고. 그리고 영주권을 받게 되면 이를 은행에 또 보고 해야 한다고 한다.

한도는 제한이 없지만 10만불 까지는 문제 없이 보낼 수 있고, 10만불 이상의 경우는 세무소에서 자금 출처 확인서를 받아야 한다고. 그리고 10만불은 가계당으로 계산한다고 한다.


3. 영주권자.

영주권자의 경우는 여권과 영주권만 있으면 금액에 제한 없이 해외 동포 재산 반출로 반출 가능하다고 한다.

다만 10만불이 넘어 갈 경우 만일 부동산 처분에 의한 경우는 제한이 없지만, 그 이외의 경우는 세무소의 자금 출처 확인서를 받아야 한다고 한다.

4. 해외 부동산 취득

이 내용은 콜 센터에서 안내 해 줄수 없는 부분이라고 한다.


어쨋든 종합해 보니 우리 같은 경우는 영주권을 취득 하는 시점에 해외 동포 재산 반출로 처리 하는 게 제일 좋을 듯 싶다.

그리고 신한은행에 경우 해외 이주 및 유학 상담을 위해 별도의 콜 센터를 운영하고 있으니 이를 이용하는게 더 좋을 듯.. 전화 번호 1588-8716 

일반 콜센터로 전화 했다가 지점으로 전화 했었는데..  해외 이주 관련 콜 센터가 보다 정확하게 설명해 주었다.


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

회사  (0) 2017.03.03
PA에서 집 사기  (0) 2016.08.12
뉴스룸, 9/11 , 빈 라덴  (0) 2014.07.01
Verizon to Comcast  (0) 2013.12.02
3년 그리고 새로운 3년  (1) 2013.10.15
Posted by headiron
,

Shell 코드를 작성하다보면 Java Property를 읽는 경우가 종종 있는데 보통은

. <FILE_PATH>

를 사용하면 FILE에 있는 각 변수 들이 환경 변수로 등록이 되어 사용된다.

보통은 문제가 없는데 만일 변수에 .이 있을 경우는 이를 command로 인식해 버려서 command를 실행하는 형태로 처리 되어 변수를 읽을 수 없게 된다. 역시 편한거에는 한계가 있다는 그래서 검색을 하다 보니 관련 해서 좋은 TIP을 발견

sed '/^\#/d' myprops.properties | grep 'someproperty'  | tail -n 1 | cut -d "=" -f2-

sed로 #로 시작되는 Line을 제외한 후  grep로 원하는 property가 나오는 마지막 라인을 가져온 후 = 이후의 값을 읽어 온다.

추가적으로 trim을 처리 하는 부분을 추가하면 아래 처럼 쓸 수 있다.

JAVA_HOME=`sed '/^\#/d' build.properties | grep 'jdk.home'  | tail -n 1 | cut -d "=" -f2- | sed 's/^[[:space:]]*//;s/[[:space:]]*$//'`

->build.properites에서 jdk.home property를 읽어서 JAVA_HOME변수에 넣는다.

출처 : http://shrubbery.homeip.net/c/display/W/Reading+Java-style+Properties+Files+with+Shell


흠... 드뎌 LOG Processing관련한 내용까지도 Tech Ops가 처리 해 줘서 이제는 12시에 다시 읽어 나서 작업 돌리고 자는 일은 끝..

이제는 LOG ANALYZE 도 인수 인계 해 버리면 정말 OAS API와는 작별을 고하게 될 듯 싶다.

Posted by headiron
,


012345678

스티커 좋아 하는 율이 .. 뭐.. 어느 아이들이나 스티커는 다들 좋아 하는 듯.




회사에 놀러온 율이.. 예쁜 얼굴에 뭘 그리 붙였을 꼬...


아빠한테 사과좀 나눠 주지...

회사에서 나름 재밌었는지... 종종 회사에 대려 가도 싫어하지는 않는 눈치다.




이렇게 입혀 보니 숙녀티가 조금 나는 듯..




율아.. 예쁜 웃음 잃지 말자...


율이의 첫번째 인형 친구 율라...

어쩌다 놀이터까지 대려 왔네..


0123456








동네 공원에서 아빠랑 공연 듣는 율이.

호... 이렇게 보니.. 뭔가 근사한 음악을 듣고 있는 것 같아 보인다...


0123456789












여기 놀이터에는 나무 토막을 주로 깔아 놓는다....

아이들은 종종 나무 톱밥을 가지고 이런 저런 장난을 하고.. 율이도 그런거 좋아 하는데.. 아빠는 좀 자제해 줬으면..



올여름도 율이는 아파트 수영장을 제집 드나들 듯이...




뉴저지에 있는 USS 뉴저지 호.. 2차 대전 등 많은 전투에 참가 했던 퇴역함이다.

사실 Robber Duck온다고 해서 돈 내서 왔는데... Rubber Duck은 결국 일어나지 못하고...



올해 율이는 Independency Day 연휴동안 계속 불꽃 놀이만 봤다... 그런데도 아빠한테 불꽃 놀이 하는 곳 찾아 내라고 또 성화다...


아빠는 공부하고.. 율이는... ?






아... 웃는 모습이 너무 예쁜 율이..














뉴저지에 있는 9/11 관련 추모 시설... 당시 피해자들의 이름이 새겨져있다...

앞으로는 이런 비극이 일어나지 않아야 할텐데..






한살때쯤 머리 깍을때는 미용실 떠나가게 울었는데..









여름에 Ocean City가서 한 컷


뉴욕 출장갔을 때 사온 케잌..좀 비싸긴 해도 괜 찮은 맛이었다.




새로 사온 놀이집...

집사람 얘기로는 설정샷이라는데...



집사람 생일 기념 케잌..





율라를 제일 좋아라 하는 율이...







Matt이 초대해 주어서 함께 즐겼던 Dutch Wonderland. 애기들 위주의 놀이공원이어서 율이도 비교적 즐겁게 놀 수 있었다는..










Wonderland갔다 오는 길에 타본 증기 기관차....

짧은 구간 동안 운행하지만 나름 즐거운 경험이었다.

율이 친구 하은이..

예전에 매뉴용크 푸드트럭 축제 할 때 길거리에서 잠깐 지나 첬었는데..

다른 한국 분 소개로 다시 만나게 되었다는..

지금도 율이는 종종 하은이를 찾는다..


롱우드가든 Beer Garden에서.... 집사람은 맥주.. 율이는 물... 나는..:-(



올 여름 마지막 바다였던 Spring Lake.. 여러 군데를 다녀봐도 여기만한 데는 없는 듯..





매뉴용크 레스토랑 윅에 먹은 크라페.


가을이 되니 도토리가 애기들의 놀이감이 되었다.

올 여름도 별 탈 없이 잘 지내준 우리 율이..

남은 올 한해도 무사히 잘 지내자...

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

세살 즈음에  (0) 2016.06.04
2년 겨울  (0) 2016.02.09
율이 2살 즈음..  (0) 2015.05.27
율이 2살 기념 Puerto Rico 여행  (0) 2015.05.05
율이의 일상 19개월  (0) 2014.12.25
Posted by headiron
,

오늘 N1서버가 Decompression되었다.

OAS가 AppNexus될 때 예정 됐던 N1 Decompression이었지만, 다들 못내 아쉬웠나 보다.

Vlad는 공지 메일에 N1 Shutdown하는 Ed 모습을 찍어 보내고,

Adam은 "will we be sitting Shiva?"

Ryan은 "I’d recommend an Irish wake instead." 라는 멘트를 Slack에 남겼다.

특히나 마음에 가는 건 Victor가 소회를 메일로 남기면서 남긴 마지막 문구였다.

So many war stories! We should have a party to share them.

Great job by all!
Good bye USN1! You were a pain in the ass but you paid our salaries! :)

생각 난 김에 wiki에서 History를 챙겨 보니 OAS 6 가 8년이 되었고, N1이 OAS7으로 업그레이드 된 기간을 보니 6년 전이다.

그 8년 넘는 기간동안 OAS가 나에게 Salary 도 주었지만, 

나에게 미국으로 올 수 있는 기회, 결혼 그리고 예쁜 딸을 주었다는 생각을 하니 조금은 가슴이 찡했다.

미국에 와서 DHC 이슈가 생길때 마다 Stress때문에  힘들다가, 

언제 부턴가 DHC이슈가 줄어들었을 때, 사업이 잘 안된는 건 아닐까 하는 걱정보다는 편하한 나의 생활을 즐기기만 했던 나를 생각하면 아쉽다는 생각이 든다.

Network 사업 인력의 Layoff, MoonShot Project 등을 하면서 한 번쯤은 오늘과 같은 상황도 생각해 볼 수 있었을 텐데... 아직도 세상일은 나에게는 어렵다는 느낌이다.

뉴욕 오피스를 나오며 Jie에게 메신저로 인사를 하고 나오는데 정팀장님이 HR에 나의 Transition에 대해서 진행하고 있다는 소식을 전해 주었다.

모두 N1과의 작별을 하는 날, 나는 이렇게 OAS와의 작별도 맞이하게 되었다.




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

Past 10 years, Next 10 years  (0) 2017.10.27
2015년을 마무리 하며  (0) 2015.12.30
부활  (0) 2014.04.21
재준이 침대  (1) 2013.03.18
종려나무  (0) 2013.03.11
Posted by headiron
,

지난번에 Search관련해서 이슈가 있었는데 

오늘 on call로 연락온 내용을 review 하다 보니 같은 이슈가 production 에도 발생했던 걸로 보인다.

예전에 메일을 찾다보니 운호선임이 잘 정리 해 놓은게 보여서 다음번에 필요할 듯 해서 정리 해 놓는다. 

( Thanks Unho ) 

It occurred by limit of max user processes on server configuration.

Check

Check limit of max user processes

[central@01 ~]$ ulimit -u

Check count of processes by elasticsearch

[01 ~]$ ps -eLf | grep elasticsearch | wc -l

728

How to solve 

Update /etc/security/limits.conf
...

<account> soft nproc 30000
<account> hard nproc 30000


'개발자세상 > 자바세상' 카테고리의 다른 글

Scala  (2) 2016.06.16
Mockup 테스트  (0) 2016.02.02
Control character in XML  (0) 2014.05.28
jboss db pooling timeout  (0) 2014.03.01
ResultSet FetchSize  (0) 2014.02.25
Posted by headiron
,









율이 2살 기념 푸에르토리코를 다녀왔더니 필리에 카페베네가 생겼다.

신상이면 반드시 챙기시는 우리 마눌님이 이런 걸 그냥 넘어 갈리가 없지..

한국에서는 많이 안 다녔는데.. 뭐.. 그냥 그런 커피숍...

H-Mart갈때 가끔 이용할 것 같기는 한데... 딱히 사람만날일이 없어서 별로 이용할 일은 없을 듯..


01234567

아마도 내가 회사 간 사이에 율이랑 찍은 사진 인것 같은데... 

역시 우리 율이는 웃는 모습이 이뻐...


어느 날씨 좋은 주말 가본 롱우드가든.

평소에는 카페에서 식사하는데 요즘 관람객이 많은 관계로 혹시나 해서 김밥을 준비 했더니 역시나...

덕분에 굶주리지 않았다는..


처음 사용해본 셀카봉.

푸에르토리코에서 사용하려고 구매했는데, 거의 사진을 안 찍은 관계로 이제서야 처음 사용해봤다.

뭐. 나름 괜찮기는 한데... 자주 사용할 일은 없을듯..

온실앞에 분수가 정말 좋은데.. 2017년까지 공사를 하는 관계로

다들 지나쳤을 분수가 이제는 Hot Spot이 되어 버렸다.




목마도 한 번 태워주고.. 근데 율이는 목마 타는 걸 별로 안 좋아한다... 다른 애들은 다 좋아 하는 것 같던데..

아빠가 못 미더운가..

아마도 율이는 

사람 많고 구경다니는게 지루했나보다..

나는 뭐.. 그럭저럭인데.. 마눌님은 사람많은 거 딱 질쌕이라... 

나중에 야간개장 하면 그때 여유있게 즐기자고 한다.

뭐... 나쁜 생각은 아닌듯..


날씨가 더워서 산책하다가 쉬면서 찍은 사진..


율이의 두 살 생일은 작년처럼 조그만 케잌으로 자축했다.

내년에는 어떻게 율이의 생일을 축하 해 줄지 고민을 좀 해봐야 할 듯 하다.


건강한 율이는 어느덧 개월이 아닌 나이를 얘기 하는 아이로 잘 자라고 있다.

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

2년 겨울  (0) 2016.02.09
2살 그리고 몇 개월 즈음  (0) 2015.09.11
율이 2살 기념 Puerto Rico 여행  (0) 2015.05.05
율이의 일상 19개월  (0) 2014.12.25
율이의 일상 18개월  (0) 2014.11.30
Posted by headiron
,