The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

你必須瞭解 Azure Functions 內建的執行記錄如何對成本帶來衝擊

當你在建立 Function App 時也同時啟用了 Application Insights 的話,預設會啟用內建的記錄機制(built-in logging),並且會把記錄儲存在 Azure Storage 儲存體帳戶的 Table 中。我們有個 Azure Function (v1) 應用程式,至今穩定運作了 4 年,但最近發現就算沒有什麼流量,儲存體的費用也很高。因為我們的網站最近已經沒有什麼流量,怎麼還會花這麼多錢呢?我分析了一下,發現光是 Table Storage 就佔用儲存體有 113 GiB 之多這才驚覺,原來是 Function App 搞的鬼,他們把所有監控的數據都自動儲存到指定的 Azure Storage 儲存體帳戶之中了!今天我就來說明如何有效率的刪除這些過時的紀錄,避免不必要的資源耗用。

... 繼續閱讀 ...

直接將 T-SQL 命令透過 STDIN 的方式傳入 SQL Server Linux 容器執行的方法

我先前寫過兩篇文章,一篇是 使用 Docker 執行 SQL Server on Linux 容器之常用工具與命令 分享各種常見的執行命令,另一篇則是 深入剖析 docker run 與 docker exec 的 -i 與 -t 技術細節 幫助我更加理解 Docker 處理 STDIN 與 Virtual Terminal (VT) 之間的關係。這讓我連結到一個長久以來希望被微軟實現的需求,如果我想直接透過 STDIN 將 T-SQL 傳入 SQL Server on Linux 容器執行,不想先把本機的 T-SQL 檔案複製進去,那該如何處理?想不到還真的給我研究出方法了!

... 繼續閱讀 ...

如何在 Windows 10 上順利安裝 Apple Mobile Device USB Driver 驅動程式

我人生第一支 iPhone 是 iPhone 6 Plus,當時的 iPhone 要透過 iTunes 才能將手機中的照片複製出來,非常麻煩,所以用到手機電池壽命終結之後,我就換 Android 了。用了四年 Android 之後,去年我又換了 iPhone 13 Prox Max,一開始都好好的,也可以透過 USB 直接複製照片出來,但最近不知為何 Windows 10 再也無法識別 iPhone 裝置,讓我苦惱了好幾週,直到前天我才搞定。這篇文章我來說說我的方法。

... 繼續閱讀 ...

認識 Azure App Service 對外網路連線的 SNAT 限制

最近我們有個在 Azure App Service on Linux 的 Function App 站台出現了一些連線問題,主要問題並不是斷線,而是不時會出現 Timeout 問題,但這些問題我們在本機開發時都不會遇到,是部署到 Azure 之後才遇到的問題。我花了好幾天才真正釐清問題的潛在原因,這篇文章我就來說明這個特殊的狀況。

... 繼續閱讀 ...

如何在 Windows 的 PowerShell 模擬 Linux 環境下的 sudo 命令

前天看到黑暗執行緒分享了一篇以管理者身分重新執行 .NET 命令列程式文章,發現在 Windows 變身為系統管理員身份執行程式真的很簡單,今天這篇文章我打算分享一個我寫的 PowerShell 腳本,讓你可以在 Windows 透過 PowerShell 隨時可以改以系統管理員身份執行任意程式,並且可以模擬 Linux 常見的 sudo 命令。

... 繼續閱讀 ...

如何從 WSL 叫用 TortoiseGit 的 Show log 並在出現錯誤訊息視窗時複製訊息

因為我有些專案是在 WSL 環境下開發,我最近嘗試從 WSL 叫出 TortoiseGitShow log 視窗,但是卻頻繁的遇到 Failed to get UnRev file list 的問題 (如下圖示),解決方法其實很簡單,只要執行一下錯誤訊息中的命令就好,但這個視窗無法選取文字,我要怎麼複製呢?原來有個不在文件中的密技可以用!

... 繼續閱讀 ...