tezu memo blog

日々行った作業をメモしていきます

AWSで実現するモダンアプリケーション入門 を読んだ

AWSで実現するモダンアプリケーション入門 〜サーバーレス、コンテナ、マイクロサービスで何ができるのか作者:落水 恭介,吉田 慶章技術評論社Amazon 自身のモダンアプリケーション?の経験 何となく経験出来ているような・・ Unit Testのカバレッジ100%を実…

Software Design 2023年2月号 ドメイン駆動設計入門 を読んだ

gihyo.jp 自身のドメイン駆動設計の理解や状況 実践ドメイン駆動設計 | ヴォーン・ヴァーノン, 髙木 正弘 |本 | 通販 | Amazon は読んだ 値オブジェクト、サービスは実務で使用した ドメインモデル貧血症 - Martin Fowler's Bliki (ja) なサービスもいくつか…

37signals Dev — Vanilla Rails is plenty を読んだ ServiceじゃなくてMix-inで良いのかも知れない

dev.37signals.com 自身のフレームワーク経験 昔のJava FW. Jakarta Struts cFramework Teeda(Seasar Project) CakePHP 2.x Symfony 3.x Laravel 5.x - 8.x CakePHPでModelがFATになるのが辛かったので、Laravelを使用した開発では無条件にControllerとModel…

図解 Amazon Web Servicesの仕組みとサービスがたった1日でよくわかる を読んだ

購入した理由 図解 Amazon Web Servicesの仕組みとサービスがたった1日でよくわかる作者:NRIネットコム株式会社,上野 史瑛,小林 恭平,尾澤 公亮,高梨 友之SBクリエイティブAmazon 50%OFF and AWS全然知らない人とのコミュニケーションを円滑にする 自身のAWS…

SES メールを連続送信後にAthenaで結果を確認すると1件しか表示されない Kinesis 動的パーティショニングキーで解決

最近、SESと戯れています 事象 SESを使用してメールを連続送信後にAthenaでメール送信の結果を確認すると1件しか表示されない CREATE EXTERNAL TABLE SES_RESULTS ( notificationType string, mail struct <messageId:string, commonHeaders:struct < `from`:array<string>,`to`:array<string>, subject:string >>, delivery struct </string></messageid:string,>…

zircote/swagger-php v4 upgradeでWarning: Required @OA\Info() not found

PHP

事象 Dependabotが作成するPRの対応で発生 ./vendor/bin/openapi ./app/Http/ -o ./openapi.yml Warning: Required @OA\Info() not found 3系から4系へのupgrade 原因 @OA\Infoを定義しているPHPがClassでは無くFile app/Http/open-api.php

OWASP ZAP Docker user-agentを変更

はじめに CircleCIでテスト実行時にAWS WAFにIPを追加していたが、AWS WAF v2にupgradeしたところ、IPを認識する時間が長くなったので、Allowの条件をIPからuser-agentに変更した github.com を見る限りはoption指定出来そう public static final String DEF…

OWASP ZAP DockerをCircleCIで実行

はじめに CircleCIで初めてリモートDocker(setup_remote_docker)を使った。それなりにハマったので整理 IPがプライマリとリモートで異なる テスト対象はdevelop環境なので、AWS WAFでIP制限をしている 既にCypressでE2Eテストを実行しているので、実施前後…

Laravel Validation Test Requestクラスのみを対象

バリデーションのテストをしたいのですが https://readouble.com/laravel/5.2/ja/testing.htmlだと、bladeファイルも必要なのでちょっと違うんですよね

Laravel Monolog Cascadeを使用してログレベル毎に出力するファイルを変更する

ログレベル毎に出力するファイルを変更したい。Laravel標準ではdailyでログファイルをローテートは出来る程度。Monolog Cascadeを使用して、ログレベル毎に出力するファイルを変更する

WindowsでPhpStormとXdebugを動かす

PHP

少しハマったので整理してみました 環境 WindowsVista(32bit版) Apache 2.2.11 PHP 5.3.25(Thread Safe) PhpStorm 6.0.2 最初からこのサイトを見ていたら、すんなり設定出来たかも知れません Zero-configuration Web Application Debugging with Xdebug and …

データベースをDiffするツール liquibase

設計書の突き合せが面倒なので探していたら良いツールがありましたLiquibase | Database Refactoring | Liquibase ダウンロード 現時点の最新2.0.5を取得 http://github.com/downloads/liquibase/liquibase/liquibase-2.0.5-bin.zip今回はAntを使って実行し…

Flexible Renamer ファイル名変更 正規表現で

ググっても期待する結果がヒットしなかったので 先頭の文字を変更 例)CT001_00_mlt.jpgをSAMPLE01_00_mlt.jpgに変更 検索 CT001(.*) 置換 SAMPLE02\1 画面 中間の文字を変更 例 SAMPLE02_ct001_01_mlt.jpgをSAMPLE02_BLU_01_mlt.jpgに変更 検索 (.*)ct001(.…

【Groovy/Grails Tool Suite and Git】git pullでエラー

別環境でpushしたソースを始めてpullした際にエラーが発生したのでメモgit勉強しないとダメだなあ 1. pull。エラー発生 The current branch is not configured for pull No value for key branch.master.merge found in configuration 2. configファイル編集…

grails-platform-ui-scaffolding Install package-pluginコマンドでzip作成する必要有

mintsource/grails-platform-ui-scaffolding · GitHubscaffoldで生成するGSPファイルをGrails Plugin: Plugin Platform UI仕様にするプラグイン platform-uiのタグに変更するの面倒なので助かる grails install-plugin [name] [version] でインストール不可 …

GA Functions(ver.1.4.2)導入 Hatena Blog

GA

外部リンクのクリックを測定したいので、Google Analyticsにフォーム入力イベントなどを機能拡張するJavaScript「GA Functions」 | murak.netをBlogに導入 jquery.gafunc.jsを改修 理由は以下の通り Hatena Blogが使用しているjQueryは1.9系

Grails Platform Core siteNameTagの値はAppのConfig.groovyで変更

軽く苦戦したのでメモ。こんな簡単な変更に苦戦しているようでは悪戦苦闘の日々が続くのだろう、、 siteNameタグのリファレンス抜粋 Renders the name of the site. This is defined in config plugin.platformCore.site.name. configって何だろ。サンプルコ…

Grails paginateTag 1ページの行数指定(max)が有効にならない

generate-viewsコマンドで作成したlist.gspに1ページ3行を指定(max=3) <div class="pagination"> <g:paginate max="3" total="${memberInstanceTotal}"/> </div> 有効にならない、、、 paginateのマニュアルに以下の記載があるので、param指定してみる max (optional) - The number of records to display per page (defaults to 10). Used ONLY …

GoogleAnalyticsとウェブマスターツールの連携

GA

実施頻度が低く失念してしまったのでメモ GA トラフィック→検索エンジン最適化→検索クエリーを選択 GA ウェブマスタツールサイト 編集リンクを選択。ウェブマスタツールに移動 ウェブマスタツール 対象のサイトを選択後に保存ボタンを選択ウェブマスタツール…

Grails GORM Enum

Domainクラスのint型属性をEnumに変更1. Enum作成。#getIdを実装。これで任意の値をDBに登録出来る [#GRAILS-3633] Enhanced Enum support - Grails JIRA If the enum has an instance method "getId()" which has a return type public enum Sex { MAN(1),W…

Grails GORM Domain作成・データ登録・確認

1.Domain作成 >grails create-domain-class jp.gr.java_conf.tezu.grails.ec.Member | Loading Grails 2.1.1 | Configuring classpath. | Environment set to development..... | Created file grails-app/domain/jp/gr/java_conf/tezu/grails/ec/Member.gro…

要求を仕様化する技術・表現する技術と「派生開発」を成功させるプロセス改善の技術と極意

こんなことに困っていた時に助けてくれた本です。内容がちょっと冗長的ですが、、 要求・要件・仕様・設計とか現場毎に意味が違うような この要件ってどの設計書・プログラムで実現してるのか分からん 何でこんな仕様になったんだろう?分からんから直せない…

Grails Platform UI Install

Grails Plugin: Plugin Platform UIをインストールindex.gspを3 Getting Started 1.0.RC2のコードに差し替えてみたこれが こんな感じに。カッコ良いです! 欲を言えば、generate-allコマンドやgenerate-viewsコマンドで出力するgspファイルもこのUI tagで出…

Grails Private PluginにInstallしたPluginをAppが認識しない

【問題】 Private PluginにGrails Plugin: Plugin Platform CoreをInstall後、Private PluginをInstallしているAppを起動してもPluginを認識しない問題が発生(ややこしい、、)App →(Use)→ Private Plugin →(Use)→ platform-coreの関係【解決方法】 Appから…

EC on Grails コンポーネント図

コンポーネント図を作成して、頭を整理 説明 EC PKG for サイトPC・モバイル・管理のサイト毎に作成。PKG標準機能を全て実装。カスタマイズ不要であれば、本プラグインをインストールするだけでECサイト用のアプリケーションが完成 EC PKG 共通機能PC・モバ…

【Groovy/Grails Tool Suite and Git】環境構築 5. 文字コード

プロジェクトを右クリック→Propertiesメニューを選択→Resourceを選択→Text file encodingをUTF-8に変更しないと以下のエラーが発生 サーバー実行プロジェクトを右クリック→Run As→2 Grails Command(run-app)エラー:この文字は、エンコーディングUTF-8にマッ…

【Groovy/Grails Tool Suite and Git】環境構築 4. GitHubにpush

ローカルリポジトリにcommit後はサーバにpush プロジェクト上で右クリック→Remote→Push 接続情報を入力https://github.com/{user}/{repo}からコピー master [branch]、Add Specを選択 Force Updateをチェックし、Nextを選択(チェックしないとエラーになった…

【Groovy/Grails Tool Suite and Git】環境構築 3. SSH公開鍵 作成 & GitHub登録

こちらを参考にさせて頂いた EgitでGitHubにアクセスする · hybitz/AndroidInfo Wiki · GitHub GGTS Window → Preferencesを選択 GGTS Network Connections → SSH2 → Generate RSA Keyを選択 GGTS 結果をコピー You can paste.....って奴 GitHub Accont sett…

【Groovy/Grails Tool Suite and Git】環境構築 2. .gitignoreと.gitkeep

Git

commit対象・対象外のファイル・ディレクトリの指定 対象外の指定は.gitignore Git directory直下に.gitignoreを作成して、以下を追加classファイルやGrailsのプラグインをcommit対象から除外する /target /target-eclipse /.link_to_grails_plugins 逆は.gi…

【Groovy/Grails Tool Suite and Git】環境構築 1.リポジトリ作成

再び環境構築する可能性があるのでメモ GGTSのプロジェクト上で右クリック→Team→Share Project gitをチェック Use or create repositories in the Eclipse workspace is not recommendをチェックして、Create Repositoryを選択これを選択しないと上手くいか…