PHPカンファレンス福岡 2023 2023/06/24 uzulla
※「postfix動かそうとしてもログが/var/log/maillogに無い件」という記事を書き換えました。 Mac でXAMPPとかでメール送信させてみる 以下Sierraのときに書いた記事だったけど、Catalinaも同様でした。ただ、ipv6を使うと送信先がGmailだと接続を許さないのでipv4設定を行うこと。 下のほうに記述してあるSMTPログをキャッチすると以下のログがでていることがわかる。 ちょっと改行してわかりやすくしてます。 ipv6使う場合は、認証しろよってことです。 relay=ASPMX.L.GOOGLE.COM[2404:6800:4008:c04::1a]:25, delay=2.2, delays=0.19/0.01/1.5/0.49, dsn=5.7.1, status=bounced (host ASPMX.L.GOOGLE.COM[2404:6800:
git log 使い方 コミットログを表示する git log とするとページャが起動して(設定による) コミットログが表示される。 パッチ形式のコミットログを表示する コミットログと変更点のパッチ形式を表示するには「-p」オプションを使う。 git log -p コミットログとファイルの変更の状態を表示する git log --stat とすると diffstat が表示される。また、 git log --name-status とすると変更されたファイルの名前とステータスが表示される。 コミットログを指定した数だけ表示する たとえば、最近のコミットログを 5 つだけ表示するには「-<num>」か「-n」オプションを使って git log -5 git log -n 5 とする。 特定の範囲のコミットログを表示する 「<since>..<until>」で指定する。 たとえば、 git l
西澤です。目新しさの無いエントリーですが、溜め込んだELBログを解析する必要があったので試してみることにしました。Amazon Athenaは東京リージョンでは使えないので、OregonリージョンのAthenaから、東京リージョンのS3バケットをデータソースとして検証しました。 と言ってもほぼ下記ページにやり方は詳しく載っていますので、公式ページを見ていただく形でも構いません。 Analyzing Data in S3 using Amazon Athena | AWS Big Data Blog Athenaでデータベースを作成する データベースエンジニアで無い担当者からすると、専用のSQLクライアントを用意すること無く、AWS Management Console上で全ての操作が完結するというのは大変嬉しいです。GUIで操作することもできますが、テーブルを作成するデータベースを先に別に
■1〜3回の内容を再設計した記事を書きました。 FireLens/fluentbit構成の見直しと改修 はじめに ここ最近、FireLensの機能選定を行っており fluentbitのカスタムイメージを作成し、FireLensに接続するまでの機能調査を行いました。 1回目の記事です。 2回目 ローカルで、datadog/S3へデータを転送できるdockerイメージを作成する 3回目 Firelensで、datadog/S3へデータを転送できるdockerイメージを作成する FireLens実装サンプル 概要 VPC内で稼働しているwebアプリケーションのEC2インスタンスを、fargate化したいという話がありました。 改修に伴い、fargateコンテナをステートレスにする為、ログの管理方法が話題に上がりました。 また、監視業務を内製化したいという要望もあった為、ログの検知システムも検討し
こんな課題を解決したい CloudWatch Logsでログを調査したい 特にログ周りの整備や連携は進んでいないので、現状CloudWatch Logsだけでなんとかしている 探したいおおまかな時間とキーワードはわかっている AWS Console上でイベントのフィルターで時間とキーワードを指定して検索しようとする ログが多すぎて、いつまで経っても結果が帰ってこない 基本Lambdaのログを想定(他でも使えると思います) これを、CLIとコマンドを組み合わせて、なんとか周辺のログを取得するお話です モデルケース 今回は、例えば以下のようなLambdaのログを仮定してみます Lambda関数名: TestLambda 取得したい時間: 2019/08/20 10:00 - 10:10 (1566262800000 - 1566263400000) 検索したいキーワード: Error その他条
普段はアプリケーションレイヤの仕事をしているため、「データベースはデータを入れておくただの箱」という発想でした。が、さすがにこれはまずいだろう、と思いたち、勉強中です。 とくにデータベースが専門領域というわけではないので、間違いがあれば教えてください。 検証バージョン PostgreSQL 10.5 自前ビルド はじめに PostgeSQL におけるデータの実態はファイル。 言うまでもないが、ディスクに書きこむことでデータを永続化する。 しかし、メモリと比較してディスクへの読み書きは非常に遅い。 参考 プログラマーが知っておくべき「PC内部の通信速度」 そのため、ディスクアクセスをできる限り減らして、より高速にアクセスできるメモリで処理しておき、ある程度まとめてディスクに書き出せば早いじゃないか。(No Force = コミット 時にディスクへ書き込まない。いつか誰かがやる。) しかしこの
GitHubのプルリクエストの差分はどこと比較しているか?(git diffの".."と"..."の違い)GitGitHub ディップ Advent Calendar 2018 の1日目です。 はじめに チーム開発をしていて、GitHubのプルリクエストでファイル差分を見たときに、 「masterと同じはずなのに差分として表示されている...なぜ?」となった経験はありませんか? 今回は、そのような事象にぶち当たったことがあるGit/GitHub初心者向けに、 GitHubのプルリクエストの差分の仕様についてまとめてみます。 また、その説明のためにGitのdiffコマンドのダブルドットとトリプルドットの違いについても確認します。 まずは、git diffについて git diffとは? git diffは、コミット<->コミットやインデックス<->ワークツリーなどの差分を表示するコマンドです
git log --graph --pretty=oneline でもいいんだけど、情報として物足りない。 エイリアスの設定によりこんな感じに美しくすることが可能です。 .gitconfigのエイリアスは下記のように設定します。 [alias] lg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative lga = log --graph --all --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-com
概要 アプリケーションのログをsyslogに吐き出し、ローテートする。 関連記事 Dockerのログをrsyslogで出力する Railsのログをsyslogに出す PythonでSysLogHandlerを使ってsyslogでログを出力する 環境 CentOS release 6.7 設定ファイル 設定ファイル構成 /etc/ ├── logrotate.conf # メインの設定ファイル ├── logrotate.d # 各サービスごとの設定ファイル │ ├── dracut │ ├── iscsiuiolog │ ├── mcollective │ ├── mysql │ ├── syslog │ ├── yum /etc/logrotate.confに全ての設定を記載することも可能だが、 /etc/logrotate.d以下もincludeされているので、ここにサービスご
この記事のショートリンクを取得 <a href='https://wp-doctor.jp/blog/?p=2655' target='_blank'>ワードプレス(WordPress)でエラーログを記録して、サイトの保守管理を向上させよう</a> 多くのソフトウェアには、エラーログ(error log)の出力機能というものがついています。これはユーザーがソフトウェアを使用していて何らかの不具合が起こった場合に原因を特定しやすくするために最後に行った操作やエラーを記録しておく為のものです。ワードプレスにもこのエラーログの出力機能がついていて、サイトのアクセス数が下がったり、問い合わせが少なくなった時などの原因特定に役に立ちます。 *初期状態ではこの機能は有効になっていませんのでエラーログの場所には何も出力されていません。 今回はワードプレスのエラーログ出力機能の使い方と、活用方法を解説いた
JavaScript の console がすごいことになっているらしい。 本日、以下の記事を見つけました。 Getting creative with the Console API! この記事で紹介されている console のメソッド全然知らなかったのでビックリしましたが、実際にどう表示されるのか載っていなかったのでChromeのコンソールでスクショを取ってみました。 console.log() 本文によるとlogメソッド内のテキストリテラルは以下の書式で値のフォーマットと置換ができるそうです。 %o / %O - for objects; %d / %i - for integers; %s - for strings; %f - for floating-point numbers; マジすか・・・ そんなわけで以下のコード console.log("Object value:
こんにちは。去年の今頃は Rust を書いていました。 インフラストラクチャー部データ基盤グループの id:koba789 です。 背景 クックパッドではデータ基盤の DBMS として Amazon Redshift を利用しています。 既存のデータ基盤について詳しいことは クックパッドのデータ活用基盤 - クックパッド開発者ブログ を参照してください。 今まで、ログは数時間に1度、定期実行ジョブで Redshift 内のテーブルにロードしていました。 ロードジョブの実行間隔が "数時間" と長めなのは、Redshift のトランザクションのコミットが遅いためです。 クックパッドでは数百ものログテーブルがあるため、仮に1分おきにすべてを取り込もうとすると秒間数回以上のコミットを行わなければなりません。 このような頻繁なコミットは Redshift 全体のパフォーマンスを悪化させてしまいます
# default $ ls -la /var/log/ .. drwxr-x--- 2 www-data adm 4096 Jul 12 06:38 nginx/ .. $ sudo chmod 755 /var/log/nginx $ ls -la /var/log/ .. drwxr-xr-x 2 www-data adm 4096 Jul 12 06:38 nginx/ .. 第三者に実行権限を付与する所がポイントです。 理由ですが、 nginx の worker process は ubuntu では nobody というユーザで実行されています。 このユーザは ubuntu 側で用意された、権限をコントロールされたユーザ です。例えば nginx プロセスが悪意のあるユーザに乗っ取られても被害が最小限に抑えられるようになっています。 第三者に実行権限を付与せずにログローテーショ
この記事はJava言語をつかったAndroidアプリ開発に関する記事です。 デバッグをちょっと楽にする小ネタとしてログ出力に関する提案です。 おまけもあるので見てください。(おまけが本番です) こんなものつくってみました。 public class LogUtil { private static final int MAX_TAG_SIZE = 23; // Objのクラス名をMAX_TAG_SIZEの文字数以内で出力してくれる。 public static String TAG(Object obj) { String objName = obj.getClass().getSimpleName(); return objName.length() > MAX_TAG_SIZE ? objName.substring(0, MAX_TAG_SIZE) : objName; } } TA
When using the Xcode 8+ and creating a new blank project, the following logs appear when running the application: 2016-06-13 16:33:34.406093 TestiOS10[8209:100611] bundleid: com.appc.TestiOS10, enable_level: 0, persist_level: 0, propagate_with_activity: 0 2016-06-13 16:33:34.406323 TestiOS10[8209:100607] Created DB, header sequence number = 248 2016-06-13 16:33:34.409564 TestiOS10[8209:100611] sub
私はObjective-C時代のロギングにはCocoaLumberjackを利用していました(というか今も利用しています)。新規にSwiftベースのアプリを開発するにあたって、充実したロギング環境を実現するために、自分自身でちょっとしたヘルパークラスを作ったり、良さげなライブラリを探したりしましたが、結局、Swiftでも痒いところに手が届くCocoaLumberjackを活用することで落ち着いています。 今回は、Swift環境で新たにCocoalumberjackを利用するにあたっての、ちょっとした注意点やwebページで見かけたことがない機能について少しだけ紹介したいと思います。CocoaLumberjackの基本的な使い方については、(Objective-Cベースですが、)下記あたりが参考になるのではないかと思います。 Qiita - ログ出力ライブラリのCocoaLumberjackを
iPhoneアプリの開発中に、Xcodeと接続していない状態でデバッグするため、なんらかのログを残したい場合があったりすると思います。僕は今、GPSがらみのアプリを作っていることもあり、iPhoneを持って外に出てアプリの動作を確認したりしています。そんなときに役にたったライブラリ「CocoaLumberjack」を試してみました。Swift環境へのセットアップをMEMOしておきます。 セットアップからログ出力まで CocoaPodsでライブラリをインストールします。Swift環境で使いたい場合「CocoaLumberjack」の後に「/swift」が必要なようです。CocoaPodsのセットアップについては、「CocoaPodsのセットアップ〜SDWebImageの使用準備までのログ」のMEMOをご参考に。 profileに pod 'CocoaLumberjack/Swift' と記述
CocoaLumberjackとは CocoaLumberjackについては弊社平井が記事(タグ:CocoaLumberjack)にまとめていますので、ご覧下さい。 以前、【DeNAのiOSエンジニア内で利用頻度の高いライブラリをランキング化してみました #iOS #DeNA】の記事でも紹介された通り、CocoaLumberjackはiOS開発において、高いパフォーマンスを発揮してくれるOSSのログライブラリです。 CocoaLumberjackの導入については今回触れませんので、iOSで使える柔軟なログフレームワーク〜CocoaLumberjackを参考にして下さい。 NSLogが抱える問題 NSLogは非常に簡単に使えます。しかし、アプリに合わせたログ設定に変えたいと思うと途端にCのプリプロセッサ(マクロ)を書かないといけなくなります。 さらに、そのプリプロセッサで複雑な(可読性を損ね
NSLogみたいに出力したいけど、出力の頭に入る文字を短く(時間だけに)したい。 SwiftとObjective-Cで同じ出力にしたい。 Swift側 デバッグビルドの設定でSwift Compiler - Custom Flags > Other Swift Flags に -D DEBUG を設定。 public class Log: NSObject { public static let instance = Log() private override init() { dateFormatter = DateFormatter() dateFormatter.locale = Locale.init(identifier: "en_US_POSIX"); dateFormatter.dateFormat = "HH:mm:ss.SSS" } public func print(
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く