2017-02-01から1ヶ月間の記事一覧

Apacheのアクセスログはこんな感じでコマンドから調べられる。

切り取ってしまえば、調べが簡単 $ cut -d " " -f 1-8 access_log | grep "google" | grep -ve "10.0.0.1" -vEe "10\.0\.0\.(4[8-9]|5[0-9]|6[0-3])" | wc -l ossfan.net orangain.hatenablog.com ksmzn.hatenablog.com +α帯域制限をかけながらscpなどは行っ…

リストから重複した要素を削除したい

リストの中のリストの一部が重複した場合の処理 datas = [['111111', ], ['111111', ], ] seen = set() seen_add = seen.add datas = [x for x in datas if x[0] not in seen and not seen_add(x[0])] print datas # [['111111']] www.lifewithpython.com

日本語のcsvを取り扱う際便利(python2)

csvのunicode変換は手間取るけど、良さげな変換をクラスにしてまとめている人がいたので拝借した。 import csv import sys import tempfile import shutil import os calendar_dict = { "January": "1", "February": "2", "March": "3", "April": "4", "May"…

インデックスを理解する。

SQL

MySQLはインデックスを使うとうまくチューニングできるらしい。 なんかいいサイトないかと探していると発見。 qiita.com リンク先に一つずつアクセスして行って、学んでいこうとしてる。

ApacheでYou don't have permission to access / on this serverが出た。

要は権限の問題。作業ディレクトリに権限を渡してあげればいい。 akiniwa.hatenablog.jp

mysqldump: [Warning] unknown variable 'loose-local-infile=1'について

SQL

以下のERROR、、ではなくてWarningが出たので、対処した。 mysqldump: [Warning] unknown variable 'loose-local-infile=1' 以下のサイトを読むと、これは[Error] unknown variableを出さないための裏技っぽい。 んなこと知らんがな。どうなっとんじゃ。 gih…

何度かリリースを経験して

下で今のgit hashがわかるらしい。 git rev-parse HEAD 問題が起これば色々直して行く方法はある。 www.atlassian.com あと、リリース時には操作コンソール、ログ確認、topコマンドによる確認。の3つをしながら行う方がいい。

課題もらっちゃった。。

SQL

これについて解いていこうと思っている。 何か処理したレコード群を、既存のテーブルにon duplicateでinsertする課題。 1. バルクinsert 2. tsvに一旦出力して、ローカルload dataとリモートload data 3. tsvに一旦出力して、csv engineでtableに見せかけて…

Webのアクセスピーク時の負荷を測るにはSiegeってものがあるらしい。

Webの最後の負荷テストの時に色々ツールがあると便利だ思った。 他のテストもツールを組み合わせるといい感じに成形できそう。 qiita.com 以下は今のレスポンスタイムを確かめる方法。 $ curl -kL http://google.com -o /dev/null -w "%{time_total}\n" 2> /…

SQLの集約化した後の合計値

SQL

こんな感じでまとめられる。 SELECT sum(conversions.value)*count(DISTINCT conversions.id)/count(*) as conversion_value FROM links LEFT OUTER JOIN stats ON links.id = stats.parent_id LEFT OUTER JOIN conversions ON links.id = conversions.link_…

Atomのjson整形とGoogleAnalyticsについて

AtomのJsonデータをブラウザからコピーして、整形するときに使える。 loumo.jp また、ブログにはGoogleAnalyticsという便利ツールがあるらしい。 junichi-manga.com dev.classmethod.jp はじめてのアナリティクス API V4: インストール済みアプリケーション…

git pullしてCompressing objects: 100% (16/16), done.のような表示が出たら...

Git

gitを使っていて、なんかpullが重いとか思ったら巨大なファイルを圧縮してpullしているようなinfoが… 以下のサイトが役に立ちそうと思いました。 まあ、.gitignoreを再適用して別ブランチにpushしたら何事もなかったように動くんやけど、、、 Git - メインテ…

pythonのリスト内辞書のソートについて(JSON)

以下のような場合はこのようにソートできる。 >>>terms = [{'hoge':1}, {'hoge':3}, {'hoge':2}] >>>sorted(terms,key=lambda x:x['hoge'],reverse=True) [['hoge': 3}, {'hoge': 2}, {'hoge': 1}] jsonの値などをソートするときに有効。 nemupm.hatenablog.…

SolrのadminのAPIの話

Solrのadminについて、curlしてreloadすることがあると思う。 その時は $ curl "http://localhost:8983/solr/admin/cores?action=RELOAD&core=core0" とかすればいい。するともう一回、solrにデータを投入できる。 CoreAdmin API - Apache Solr Reference Gu…

Gitをpushして失敗した時と.gitignoreを後で追加した時

Git

Gitをpushして失敗した時は、以下をすると直っていく $ git log $ git revert commitnumber あと、gitしてignoreを後で追加した時 git rm -r --cached . git add . qiita.com

ファイル内の文字列探索

現在のディレクトリ以下のファイルの文字列を探索する方法。 $ find . -type f -name "*.html" | xargs grep ' 探索したい文字列' -n find コマンド | コマンドの使い方(Linux) | hydroculのメモ

Gitの取り消し作業

Git

Git でローカルの変更を元に戻すには $ git checkout ファイル名 特定のファイルではなく、全て元に戻したい場合は $ git checkout . git pull の取り消し git reset --hard HEAD^ tnakamura.hatenablog.com tm.root-n.com

入力した行の全消し(ターミナル)

Ctr+uとCtr+kで全消しができる。 あと、iterm2ではshift + Ctr + Hでクリップボードが発動。 bacchi.me 日本語の場合、文字が崩れる場合があるので以下の iTerm2 > Preferences > Profile > Text の中にある、Unicode > Treat・・・characters as double wid…

unicodeの"__mod__"について

__mod__は数値の場合、割り算のあまりとなっているが、文字列にも存在したので、調べて見た。 %は%sや%dなど、文字列のフォーマットとして使われているところからきているのか、 >>> print '%s'.__mod__('kokoko') kokoko のように使うっぽい。 qiita.com

MultiValueFieldがドキュメント見てもわからなかった。

Form fields | Django documentation | Django 上のドキュメント見てもよくわからなかったので、探しているといい感じに解説しているサイトがあった。 coderwall.com どうやら、1つのinputに対して、二つのformを取得できるようにカスタマイズできるらしい。

Solr6の使い方

以下のようにしてスタート。 $ bin/solr start -p 8984 qiita.com

バックグラウンドで動かす方法(runserver)

python runserverを開発環境のバックで回していたい時。 $ nohup python apps/manage.py runserver 0.0.0.0:8000 > /dev/null 2>&1 < /dev/null & $ jobs $ ps aux | grep runserver $ %1 $ kill %1 これでいける。disownもあるけど、こっちの方がログアウト…