Posts
Yarn - Yarn outdated
yarn outdated 命令可用來檢查是否有使用到過時的套件。
調用命令 yarn outdated 後會列出像下面這樣的資訊,有套件的名稱、目前使用的版本、預期的版本、最新的版本等資訊。
yarn outdated 若資訊過多也可以在調用時加帶套件的名稱,這樣就會只檢查指定的套件。
yarn outdated [package...] Link yarn outdated | Yarn
read morePosts
PL/SQL SQL CODING GUIDELINE 57 - Avoid using Oracle’s predefined exceptions
條款五十七,避免使用 Oracle 預先定義好的例外。
像是下面這段程式,在程式中主動拋出了 Oracle 預先定義好的例外就不是建議的做法。
BEGIN RAISE NO_DATA_FOUND; END; 應該要避免直接使用 Oracle 預先定義好的例外。
DECLARE my_exception EXCEPTION; BEGIN RAISE my_exception; END;
read morePosts
PL/SQL SQL CODING GUIDELINE 56 - Avoid unhandled exceptions
條款五十六,避免未處理的例外。
像是下面這段程式,當沒資料或是資料過多時 Select into 就會丟出例外。
CREATE OR REPLACE PACKAGE BODY department_api IS FUNCTION name_by_id (in_id IN departments.department_id%TYPE) RETURN departments.department_name%TYPE IS l_department_name departments.department_name%TYPE; BEGIN SELECT department_name INTO l_department_name FROM departments WHERE department_id = in_id; RETURN l_department_name; END name_by_id; END department_api; 建議是要確保程式不會有未處理的例外,像是上面這樣的程式就要加處理 NO_DATA_FOUND 與 TOO_MANY_ROWS。
CREATE OR REPLACE PACKAGE BODY department_api IS FUNCTION name_by_id (in_id IN departments.department_id%TYPE) RETURN departments.department_name%TYPE IS l_department_name departments.department_name%TYPE; BEGIN SELECT department_name INTO l_department_name FROM departments WHERE department_id = in_id; RETURN l_department_name; EXCEPTION WHEN NO_DATA_FOUND THEN RETURN NULL; WHEN TOO_MANY_ROWS THEN RAISE; END name_by_id; END department_api;
read morePosts
Yarn - Yarn install
yarn install 命令可用來還原套件。
若是在 package.json 中設定的套件並未在本地被載入,可調用 yarn install 命令將之還原。
yarn install 除了調用 yarn install 還原外,直接調用 yarn 也有相同的效果。
yarn 若有需要,也可以加帶參數 –force 強制運行套件還原,所有已載入的套件都會被重新進行載入。
yarn install --force Link yarn install | Yarn
read morePosts
>-
條款五十五,避免直接使用 RAISE_APPLICATION_ERROR hard code 帶入 error number 與 error message 拋出錯誤。
像是下面這樣的程式,程式中直接使用 RAISE_APPLICATION_ERROR hard code 帶入 error number 與 error message 拋出錯誤,這樣 error number 與 error message 會散在許多地方,且會有重複撰寫的可能性,並不是建議採用。
BEGIN raise_application_error(-20501,'Invalid employee_id'); END; 建議將之封裝,集中撰寫,不僅修改方便,維護起來也方便。
BEGIN err_up.raise(in_error => err.co_invalid_employee_id); END;
read morePosts
Yarn - Yarn remove
yarn remove 命令可以用來移除載入的套件。
若是本來已有載入的套件。
就可以調用 yarn remove 命令,帶入套件名稱,將指定的套件移除。
yarn remove <PackageName> Link yarn remove | Yarn
read morePosts
Yarn - Yarn add
yarn add 命令可以用來載入要使用的套件。
調用 yarn add,帶入套件名稱,即可將指定的套件載入。
yarn add <PackageName> 若要指定版本,可在套件名稱後面加上套件的版本號。
yarn add <PackageName>@<PackageVersion> 套件載入的同時會寫入 package.json 的 dependencies。
如果要將套件載入的同時寫入 package.json 的 devDependencies,可帶入參數 –dev 或是 -D。
yarn add <PackageName> --dev yarn add <PackageName> -D 要在套件載入的同時寫入 package.json 的 peerDependencies,可帶入參數 –peer 或 -P。
yarn add <PackageName> --peer yarn add <PackageName> -P 要在套件載入的同時寫入 package.json 的 optionalDependencies,可帶入參數 –optional 或 -O。
yarn add <PackageName> --optional yarn add <PackageName> -O Link yarn add | Yarn
read morePosts
Yarn - Yarn init
yarn init 命令可以用來建立 package.json 檔案。
調用 yarn init,依序填入 package.json 檔需要的資訊。
即可建立 package.json。
如果要直接用預設值建立 package.json,可在調用 yarn init 時帶入 -y 參數。
yarn init -y 就不用使用互動的方式建立,然後一直按 Enter 套預設值。
Link yarn init | Yarn
read morePosts
Yarn - Install Yarn via apt
要透過 APT 安裝 Yarn,需要先設定 Repository。
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list Repository 設定完後,更新 apt-get,更新完即可進行 Yarn 的安裝。
sudo apt-get update && sudo apt-get install yarn Link Installation | Yarn
read morePosts
Grok Debugger
要測試 Grok pattern,可以借助一些線上工具,像是 Grok Debugger。
使用上只要在 Input 部份帶入要被 Grok 處理的資料,Pattern 部份帶入要用來處理資料的 Grok pattern 即可。
像是要處理 IP 資料,就可以在 Input 部份帶入要處理的 IP,在 Pattern 部份帶入 %{IP:ip} 這樣的 Grok pattern,下方即會顯現經由 Grok pattern 處理完的結果,也就是 Logstash 的 field,以及其對應的資料。
處理完的結果如果資訊太多不易閱讀,可勾選 Named Captures Only 選項。
若要增加自定義的 Grok pattern,這邊也可勾選 Add custom patterns 選項進行設定。
除了 Grok pattern 的測試外,Grok Debugger 也提供一些定義好的 Grok pattern 可供參考,點選上方的連接切換至 Patterns 頁面即可。
Link Grok Debugger
read more