AdSense

網頁

2024/4/25

AWS EC2 Amazon Linux 2023 mount S3 bucket

將AWS S3 bucket掛載為EC2 (Amazon Linux 2023)檔案系統磁碟的方式如下。

AWS EC2使用User Data啟動自動安裝Nginx

AWS EC2建立時可設定user data來執行一些任務,例如安裝nginx。

Golang 取得map中不包含keys的元素

例如有一slice和map,取得map中key不為slice中的key的元素。

2024/4/24

Golang 取得兩個slice之間不同的元素

Golang 找出兩個slice中的不同元素。

React Recharts繪製折線圖範例二

React Recharts繪製折線圖範例二。

2024/4/22

Git 刪除本地在遠端倉庫已不存在的tag

Git刪除本地倉庫(local respository)連結的遠端倉庫(remote repository)已不存在的tag的方式如下。

2024/4/19

Golang 一天期間時間長度 One day duration

Go time.Time計算時間時,一天的時間長度可以用time.Hour * 24表示,即24小時。

2024/4/18

Visual Studio Code 無法執行debug 錯誤xcrun: error: invalid active developer path

VS Code執行debug時無法運行,出現xcrun: error: invalid active developer path錯誤。

2024/4/17

2024 新青安房貸(青年安心成家貸款)申請

2024年4月向台灣銀行申請「青年安心成家貸款」,簡稱「新青安貸款」所準備的文件。

2024/4/16

React 啟動出現ERR_OSSL_EVP_UNSUPPORTED錯誤

React啟動時出現ERR_OSSL_EVP_UNSUPPORTED錯誤無法啟動。

2024/4/15

Golang 取得字串中指定字串後的子字串

Go取得一個字串中特定字串(含)後的子字串的方式如下。

2024/4/11

2024/4/10

Golang 利用channel限制goroutine數量

使用goroutine併發處理工作時,使用channel限制goroutine數量上限。

2024/4/9

Golang chan struct{}用途

網路上一些Go goroutine數量限制的範例中,常看到宣告Channel的型態為空struct chan struct{}的原因。

2024/4/8

Jenkins Pipeline 設定環境變數

Jenkins Pipeline設定環境變數的方式如下。

2024/4/7

Golang JWT HMAC-SHA256範例

Go使用jwt-go以HMAC-SHA256建立及驗證JWT Token範例。

2024/3/31

2024/3/30

今日風情 20240330

2024年3月30日星期六。

2024/3/27

Git cherry-pick 特定檔案

Git cherry pick特定檔案方式如下。

Jenkins Pipeline checkout/clone GitLab repo

Jenkins Pipeline將GitLab repo程式碼抓取下來的設定方式如下。

Jenkins 2.4 Node Monitors設定位置

Jenkins 2.4的Node Monitors設定位置在Dashboard > Manage Jenkins > Nodes > Configure Node Monitors

2024/3/26

Jenkins Pipeline工作無法執行 Disk space is below threshold

Jenkins裝好後無法執行pipeline工作(即使是簡單的hello world pipeline)。點擊pipeline的[Build Now],只顯示"Build scheduled",但[Build History]沒有出現任何運行紀錄。

2024/3/25

AWS EC2 Linux AMI 安裝Jenkins

AWS EC2 Amazon Linux 2023 AMI安裝Jenkins。

Mac 安裝java openjdk@21 by Homebrew

Mac使用Homebrew安裝Java OpenJDK 21 (Formulea openjdk@21)的方式如下。

2024/3/24

Golang struct slice排序

Go對包含struct元素的slice的排序方式如下。

今日風情 20240324

2024年3月24日星期日。

2024/3/23

2024/3/20

Golang Gin BindJSON ShoudBindJSON 差別

Gin可用gin.Context.BindJSONgin.Context.ShouldBindJSON將請求payload轉為struct,兩者差別如下。

Golang WaitGroup用法

Go的sync.WaitGroup可用來等待所有的goroutine都執行結束。

Golang 併發處理訊息練習

Go使用goroutine搭配channel併發處理大量訊息練習。

2024/3/18

Golang 避免index out of range錯誤

Go以index(索引)從slice取值時,避免panic: runtime error: index out of range [x] with length [y]錯誤。

Golang Swag 查詢字串參數範例 @Param example

Go swagger API文件的查詢字串(query string)參數值的範例設定方式如下。

Golang 取得GCP Monitoring Instance Disk寫入大小統計

Go以Google Cloud Client Libraries for Go來取得GCP Monitoring的instance [Disk write bytes]指標的時間序列資料。

2024/3/16

2024/3/10

Prometheus PromQL資料類型

Prometheus的PromQL語言的敘述結果分為以下資料類型。

GCP Monitoring Metric名稱與PromQL對照

由於PromQL語法只支援:_特殊字元,因此GCP Monitoring Metric(指標)名稱,例如compute.googleapis.com/instance/cpu/utilization中的./必須進行替換以便在PromQL中使用。

Prometheus PromQL是什麼?

PromQL全名為Prometheus Query Language,是由Prometheus發展的查詢語言。

2024/3/9

2024/3/8

英文 Artifact 翻譯

Artifacts字典解釋為「手工藝品」、「製品」、「人造物品」、「加工品」等。

Golang 取得GCP Monitoring Metric time series data

Go以Google Cloud Client Libraries for Go來取得GCP Cloud Monitoring的metric time series data

Golang 取得GCP Monitoring Metric descriptor

Go以Google Cloud Client Libraries for Go來取得GCP Cloud Monitoring的metric descriptor。

2024/3/7

GCP Monitoring Metric type

GCP Monitoring的metric type用來描述一個指標,包括指標名稱、測量的資源、類型、對象、資料型態、取樣間隔等;例如instance的CPU使用率、磁碟讀取bytes大小皆是一種metric type。

GCP Monitoring Metric kind種類

GCP Cloud Monitoring的metric測量值(time series)中都會包含MetricKind(指標類型),用來說明測量值的衡量方式,分為以下三種:

Golang 建立GCP Monitoring Metric Client

Go以Google Cloud Client Libraries for Go來建立存取GCP Cloud Monitoring API的Monitoring Metric Client。

GCP Cloud Monitoring metric model簡介

GCP Cloud Monitoring的metric model(指標模型)用來定義要收集哪些測量資料,由以下三個部分組成:

2024/3/5

AWS CLI 取得CloudWatch metrics統計資料

使用AWS CLI取得CloudWatch metrics統計資料。

AWS CLI修改目前設定的Region

修改AWS CLI目前設定的region的方式如下。

AWS CloudWatch Dashboard新增widget

在AWS CloudWatch的dashboard新增widget。

Golang 建立CloudWatch Dashboard

Go以Google API Client Libraries來建立CloudWatch dashboard。

AWS CloudWatch 建立Dashboard

AWS建立CloudWatch dashboard。

2024/3/3

Golang map與struct轉換

Go map與struct轉換的方法如下。

今日風情 20240303

2024年3月3日星期日。

2024/3/2

今日風情 20240302

2024年3月2日星期六。

2024/2/29

2024/2/25

Linux 要在哪安裝應用程式?

在Linux安裝應用程式一般會放在/usr/local目錄。

2024/2/24

今日風情 20240224

2024年2月24日星期六。

2024/2/23

Jenkins Freestyle project整合SonarQube

Jenkins Freestyle project整合SonarQube的過程如下。

2024/2/21

SonarQube SonarScanner掃描專案時讀不到專案設定檔

使用SonarScanner掃描本地專案時讀不到專案設定檔sonar-project.properties

Jenkins 解除安裝Plugin卡在Uninstallation pending狀態

解決Jenkins解除安裝Plugin時狀態一直卡在Uninstallation pending狀態的問題。

Jenkins 重新啟動

重新啟動Jenkins的方式如下

Rocky Linux 安裝Node.js

參考Node.js官方文件即可。

2024/2/20

Linux 修改目錄的ACL使用者權限

Linux修改目錄的特定使用者的ACL(Access Control List)權限的方式如下。

Linux 安裝SonarScanner CLI

在Linux安裝SonarScanner CLI。

Linux Docker安裝SonarQube

在Linux的Docker安裝SonarQube。

2024/2/19

GitLab 查看版本資訊

查看GitLab版本的方式如下。

SonarQube 運作元件組成 working components

SonarQube由以下各元件來實現程式碼品質分析。

Golang 字串格式化boolean值

Go使用fmt.Printf印出格式化字串或fmt.Sprintf產生格式化字串時可使用%t符號代表boolean值。

Mac 安裝Go版本管理工具gvm

Mac安裝Go語言的版本管理工具gvm(Go Version Manager)的方式如下。

2024/2/17

今日風情 20240217

2024年2月17日星期六。

2024/2/16

今日風情 20240216

2024年2月16日星期五。

Docker 安裝SonarQube Community Edition

Docker安裝SonarQube Community Edition(社群版/免費版)的方式如下。

2024/2/14

今日風情 20240214 三民運動公園

2024年2月14日星期三,春節最後一天放假。

2024/2/13

今日風情 20240213 大有梯田公園

2024年2月13日星期二,春節初四。

2024/2/12

今日風情 20240212 富岡老街

2024年2月12日星期一,春節初三。

2024/2/10

今日風情 20240210

2024年2月10日星期六。

2024/2/9

今日風情 20240209 除夕

2024年2月9日星期五。

2024/2/8

今日風情 20240208

2024年2月8日星期四。

2024/2/7

今日風情 20240207

2024年2月7日星期三。

2024/2/6

Golang template range取得parent pipeline的值

Go template在range中取得parent pipeline的值的方式如下。

今日風情 20240206

2024年2月6日星期二。

2024/2/4

今日風情 20240204

2024年2月4日星期日。

2024/2/3

2024/2/1

Git 解決cherry-pick --abort失敗無法復原

Git 解決cherry-pick --abort失敗無法復原的方式如下。

PostgreSQL timestamp日期增減

PostgreSQL timestamp欄位日期增減的方式如下。

2024/1/29

今日風情 20240129

2024年1月29日星期一。

2024/1/27

今日風情 20240127

2024年1月27日星期六。

2024/1/23

今日風情 20240123

2024年1月23日星期二。

2024/1/22

今日風情 20240122

2024年1月22日星期一。

2024/1/21

2024 賣房注意事項

最近請房仲賣房子,因為第一次賣房子(還一次兩間),沒經驗導致沒注意到細節,在這記錄一下。

2024/1/19

今日風情 20240119

2024年1月19日星期五。

2024/1/14

今日風情 20240114

2024年1月14日星期日。

2024/1/13

今日風情 20240113

2024年1月13日星期六。

2024/1/11

Nginx 設定WebSocket proxy

Nginx設定反向代理WebSocket server的方式如下。

Mac Homebrew 安裝Nginx

在Mac以Homebrew安裝Nginx。

Golang WebSocket Ping Pong範例

WebSocket Ping Pong中文通常又稱為心跳(heartbeat),是指WebSocket協議的控制碼(opcode),代表Control frame(控制幀/控制框)的Ping frame與Pong frame,用以偵測客戶端和伺服器間的連線是否存在,以實現長連線(Keep-Alive)的機制。參考RFC6455

2024/1/7

今日風情 20240107

2024年1月7日星期日。

2024/1/1

今日風情 20240101

2024年1月1日星期一,元旦。

AdSense