각각의 request_log 에 application_log 가 딸려있다. 그리고 각각의 어플리케이션 로그는 형식에 맞춰서 로그를 남길 수가 있으며 위 사진을 보면 알 수 있듯이 각각의 아이콘 그림까지 다르다!!
전체 글
- [GAE] 앱엔진의 막강한 로깅 기능 2016.05.11
- Outer JOIN 에 관해서 2016.05.10
- [서평] 얼음과 불의 노래 2016.05.05
- 2016년 쌍계사 벚꽃 나들이 2016.05.02
- 향기로운 죽향 딸기 2016.04.20
- 유시민의 글쓰기 특강의 핵심 2016.04.01
- [GIT] Conflict 대처법 2016.03.17
- 파이선과 관련된 클로져(closure) 설명중 제일 잘 된 것 2016.03.10
- [서평] 킬 더 드래곤 2016.03.07 1
- [OSX] ls 명령어 사용시 파일 확장자별로 색을 입혀서 출력시키는 방법 2016.02.26
[GAE] 앱엔진의 막강한 로깅 기능
Outer JOIN 에 관해서
Outer join 은 LEFT , RIGHT , FULL 로 나뉜다.
를 Table1 로 정하고 (as T1)
를 Table2 로 정하면 (as T2)
1. LEFT OUTER JOIN
SELECT T1.이름, T1.나이, T2.직업 FROM T1 LEFT OUTER JOIN T2 ON T1.이름 = T2.이름
결과가 위와 같이 왼쪽 테이블에 맞춰서 나오고
2. RIGHT OUTER JOIN
SELECT T1.이름, T1.나이, T2.직업 FROM T1 RIGHT OUTER JOIN T2 ON T1.이름 = T2.이름
결과가 위와 같이 오른쪽 테이블에 맞춰서 나온다.
3. FULL OUTER JOIN
SELECT T1.이름, T1.나이, T2.직업 FROM T1 FULL OUTER JOIN T2 ON T1.이름 = T2.이름
1 + 2 의 기능을 한다.
[서평] 얼음과 불의 노래
왕이 되서 사랑하는 사람과 결혼하면 목숨이 위태롭고, 정략결혼을 해야 하며, 왕국의 통치권을 손에 쥐는 순간 자금을 어디서 끌어올지 걱정해야 한다. 왕이라면 군림하는 자리라고 생각하지만 실상은 자질구레한 대소사를 전부 처리 해야 하는 귀찮은 자리다.
멋있는 모습을 보이면 곧 죽겠구나.. 라고 걱정을 해야하며, 주인공으로 보이면 상상도 못한 고난이 기다리고 있다.
기존 판타지 장르의 편견을 버리게 만들어준 소설인데, 처음에 궁금해서 볼 때와 현실적인 중세의 모습을 묘사했구나 라는 생각을 가지고 다시 볼 때의 맛이 참으로 다르다.
드라마의 원초적인 장면에 많은 관심이 가겠지만 드라마와 소설은 내용도 다르고 재미를 주는 부분이 확연히 다르다.
어떠한 주인공스러운 캐릭터에 절대 몰입을 해서는 안되는 너무나 나이드신 분이 인생을 회고하는 듯한 분위기를 느끼게 해주는 소설이다.
'그 때 착한척 하던 놈들 다 망했지', '그렇게 사랑 타령하더니 말로 봐라 그게 뭐냐' 등등의 감성을 느끼게 해준다.
인기 있는 것은 다 이유가 있다. 드라마도 재밌지만 소설도 재미 있으니까 필독을 권한다.
2016년 쌍계사 벚꽃 나들이
4월 연휴를 맞아서 내려갔기 때문에, 아직 이른게 아닐까 염려도 있었지만 그 걱정을 씻어버리듯이 형성된 벚꽃 터널
하늘이 안 보이게 피어 있다.
항상 이 각도에서 찍은 사진을 좋아한다. 정말 무성하게 피어 있는 하동 십리 벚꽃길의 모습을 담을 수가 있기 때문이다.
위 사진과 비슷하지만 다른 각도로 찍은 사진
전남 담양에 있는 '승일 식당' 이다. 서울 물가로 치면 싼 가격에 양도 푸짐하다. 밥은 따로 안나오니 먹을 때 꼭 시켜서 먹기를 추천한다.
향기로운 죽향 딸기
담양에는 메타세콰이어 길이 있습니다. 여름에 방문하면 참으로 정취가 아름다운 곳이기 때문에 많은 사람들이 찾아가는 곳입니다.
예전 거기를 걷다가 길가에서 공짜로 먹어보라고 먹어본 딸기를 맛 보고 깜짝 놀란적이 있습니다. 향이 너무 좋기 때문인데, 마트에서 파는 것과는 차원이 다릅니다.
죽향딸기라고 부르는데 죽향 딸기는 인공 수분이 아닌 벌을 이용한 자연 수분을 통해서 재배가 되며 유기농 방식이라서 씻지 않고 그냥 따서 그 자리에서 먹어도 풍미를 느낄 수가 있습니다. (특히 향이 죽임)
비닐 하우스에서 파는 죽향 딸기는 기본적으로 체험을 할 수가 있습니다. 만원을 내고 자신이 먹을 딸기를 딸 수가 있습니다. 큰것만 채워갈 수가 있는 장점이 있습니다. 뚜껑이 닫히면 만원, 안 닫히면 만이천원 (벌금 이천원)을 내야 합니다. 그리고 하우스 주인이 중간정도 크기의 딸기를 따서 모아둔거는 육천원 입니다. (가격대 성능비가 제일 뛰어남) 그리고 맛보기용으로 자잘한 딸기를 줍니다. 그런데 전라도 인심!! 한박스를 줍니다.
제철은 4월-5월이라 하니 개인적으로는 5월에 방문하는 것을 추천합니다. 그 때가 되야 메타세콰이어도 푸른색으로 잎이 무성해지기 때문입니다.
유시민의 글쓰기 특강의 핵심
글쓰기 특강에서 말하던 내용을 그대로 적었습니다.
강의 내용은 아래 링크에서 확인이 가능합니다.
https://www.youtube.com/watch?v=FgR06ZduKcw
오늘의 결론,
첫째, 좋은 책을 반복해서 읽어라. 박경리 선생님의 토지 1, 2부. 무지하게 재미있습니다. 조금 야한 장면이 있기는 하지만.
두 번째, 예쁜 고운 제대로 된 우리말을 써야 한다. 그걸 알아보는 능력을 길러야 되고, 나쁜 잘못 써진 우리말을 볼 때에도 그것을 알아보고 극복할 수 있는 능력을 여러분이 가져야 된다.
세 번째, 글을 쓸 때에는 이것이 확정된 사실에 관한 것인지 나의 주관적 판단에 관한 것인지를 구별하고 나의 주관적인 판단이 개입돼 있는 문장에 관해서는 반드시 그 판단의 근거를 제시하는 습관을 길러야 된다.
네 번째, 끊임없이 기록하라. 메모지를 들고 다녀라.
이 네가지만 여러분이 오늘 제가 말씀드린 대로 하시면 앞으로 1년만 그렇게 하면 여러분의 글쓰기 능력은 지금 상태보다, 양으로 비교할 수는 없겠지만 적어도 10배 이상은 그렇게 비약적으로 성장하게 될 것이라고 제가 확언, 장담해드립니다. 일단 해보시고 그럼에도 불구하고 안되면 저에게 손해배상을 청구하시기 바랍니다.
[GIT] Conflict 대처법
A 라는 브랜치에서 B 의 브랜치를 merge 하는 경우라고 치면
$ git checkout A $ git merge B
로 A 에다가 B 내용을 merge 하는 명령입니다.
<<<<<<< HEAD 머지 (merge) 가 될 대상 브랜치 이다. 대부분의 경우에는 내가 작업하기 위해서 체크 아웃한 브랜치다. (즉 내꺼, HEAD) ||||||| ======= 합쳐질 브랜치이다. >>>>>>>
즉 위쪽에 있는 것이 (보통 git 에서는 HEAD 라고 붙어 있습니다.) 현재 내가 작업하던 브랜치 , 아래쪽이 다른 브랜치 (pull 명령중이면 리모트 브랜치)의 내용이니 비교해서 적용하면 됨
파이선과 관련된 클로져(closure) 설명중 제일 잘 된 것
클로져(Closure)에 대한 말들은 많다. 최근 핫하다고는 하지만 전산의 태동기부터 존재하던 문법이다. 1급 객체(First class Object)를 지원하는 언어는 자연스럽게 지원하지만 개념 자체를 이해 못하는 경우가 많다.
파이선과 연계해서 클로져(Closure)를 설명하는 좋은 설명이 있어서 소개하고자 한다.
Objects are data with methods attached, closures are functions with data attached. 객체는 메서드가 달라붙어 있는 데이타라면, 클로져는 데이타가 달라붙은 함수이다.
예제는
def make_counter(): i = 0 def counter(): # counter() is a closure nonlocal i i += 1 return i return counter c1 = make_counter() c2 = make_counter() print (c1(), c1(), c2(), c2()) # -> 1 2 1 2
위에서 보면 counter 라는 함수가 i 라는 데이타를 포함하고 있는 클로져(closure)다.
http://stackoverflow.com/questions/13857/can-you-explain-closures-as-they-relate-to-python
[서평] 킬 더 드래곤
작가: 백수귀족
갑자기 쳐들어온 이계와의 전쟁후 극한의 상황에서 시작된다. 고아에 당장 먹고 살 길이 막막한 10살의 꼬마지만 지켜야 할 애들이 여러명이다. 피는 이어지지 않았지만 그 애들이 누구보다 행복하길 바라는 맏형 '이한'은 동생들을 위해서 먹을거를 훔치며 어른들과 맞서 싸우기까지 한다. 그래서 일찍 철이 들어버린 자신이 가진 최소한의 재능. 그 재능으로 인해서 동생들을 먹고 살릴 수 있다는 판단으로 이한은 지옥같은 전장으로 내 몰린다. 투정도 반항도 할 수 없이 자신이 할 수 있는 모든 것을 바탕으로 상승에 대한 의지.
간만에 재밌는 판타지를 보았다. 판타지로 분류가 되나 느끼기에는 SF물에 가깝다. 다만 액션씬(?)에 해당하는 부분이 판타지나 또는 무협스럽다. 결론은 SF 설정에 판타지스러움을 섞은 작품인데, 조잡하다는 느낌 없이 깔끔하게 녹였다.
갑자기 차원문이 열리고 쳐들어온 드래곤들에 대한 인간의 저항을 다루고 있다. '설정만 잘 만들어도 5권은 가지 않겠나'라는 평소의 나의 지론답게 아주 흥미진진하게 읽을 수가 있고, 단숨에 완결까지 완주를 하게 만드는 필력 또한 갖추고 있다. 게다가 설정의 치밀함과 나중의 반전(?) 또한 재밌게 즐겼고, 스토리 전개 또한 흡족한 수준이였다.
전쟁이 끊이지 않는 인간들에 대한 고찰은 비록 쉰 떡밥이지만 자연스럽게 소재에 어울려진 듯하다.
[OSX] ls 명령어 사용시 파일 확장자별로 색을 입혀서 출력시키는 방법
OSX 에서 사용하는 ls 는 FreeBSD 에서 사용하는 다른 버젼의 ls 입니다. 그래서 GNU 버젼의 ls 를 사용하고 싶으면 따로 설치해줘야 합니다.
$ brew install coreutils
이렇게 하면 GNU의 유틸들이 설치됩니다. 그리고 이제부터 –color=auto 라는 명령이 먹습니다. (OSX 버젼은 'ls -G' 를 사용해서 색을 출력했었습니다.) 게다가 다양한 유틸에서 화려한 색을 표출할 수 있게 만들어 줄 수가 있습니다.
coreutils 는 위에서 설치했다고 가정하고
$ git clone https://github.com/seebi/dircolors-solarized.git ~/.dircolors-solarized
와 같이 컬러 테마를 받아줍니다.
그리고 ~/.bash_profile 에 다음과 같이 적어줍니다.
alias ls='gls --color=auto' alias dir='gdir --color=auto' alias grep='grep --color=auto' eval $(gdircolors ~/.dircolors-solarized/dircolors.ansi-dark)
이제부터 위 처럼 각각 확장자별로 색이 입혀서 출력됩니다.
여기부터는 Emacs 사용자만 해당됩니다
Emacs 를 떠나기 싫은 개발자들은 자주 shell-mode 를 사용합니다. 그런데 그 안에서 출력되는 ls 는 70년대 스타일 그 자체입니다. 색이 없기 때문!! 이걸 고치기 위해서는 ~/.emacs.d/init_bash.sh 파일을 엽니다. (없으면 만들어 주세요) 그리고 그 안에
alias ls='gls -G --color=auto' alias dir='gdir --color=auto' alias grep='grep --color=auto' eval $(gdircolors ~/.dircolors-solarized/dircolors.ansi-dark)
를 추가해주고 shell-mode 를 실행시켜주면 역시 아무 변화가 없습니다. 여기부터가 어려웠는데, 이는 emacs shell-mode 가 Terminal 이 dumb 타입이기 때문. ~/.dircolors-solarized/dircolors.ansi-dark 파일을 열어서
TERM dumb
를 TERM 이 잔뜩 쓰여져 있는 곳에다 추가해주면 된다.