Ruby 配置-配置 Instana gem

廣域啟用/停用

透過設定應用程式的環境變數,可以在執行時期停用整個 gem:

export INSTANA_DISABLE=true

其他廣域啟用/停用選項如下:

Instana.config[:tracing][:enabled] # default true

如果您想要停用內建檢測,但仍允許自訂檢測,請為您的應用程式設定下列環境變數:

export INSTANA_DISABLE_AUTO_INSTR=true

主機代理程式通訊

感應器會嘗試透過 IP 127.0.0.1 與 Instana 代理程式通訊,並透過主機的預設閘道作為儲存器化環境的撤回。 如果代理程式無法在下列任一位置使用,您可以使用環境變數來配置在何處尋找 Instana 主機代理程式。

應該在執行中處理程序的環境中設定環境變數。

export INSTANA_AGENT_HOST = '127.0.0.1'
export INSTANA_AGENT_PORT = '42699'

另請參閱 一般參照: 語言感應器的環境變數

Kubernetes & OpenShift

參閱本文件 ,以確定已檢測的應用程式可以聯絡「Instana 主機代理程式」。

啟用/停用個別元件

可以使用本端配置來啟用及停用個別元件。

若要停用 gem 中的單一元件,您可以在應用程式的起始設定元中停用具有下列程式碼的單一元件:

::Instana.config[:metrics][:gc][:enabled] = false

現行度量元件為 :gc:memory:thread

設備測試可以停用為:

::Instana.config[:excon][:enabled] = false
::Instana.config[:rack][:enabled] = false

如需設備測試的完整清單,請參閱 config.rb

啟用/停用追溯收集

由於追溯在 Ruby 中有點昂貴,依預設會停用追溯收集,但可以在應用程式的起始設定元中使用下列程式碼來啟用追溯收集:

::Instana.config[:collect_backtraces] = true

這將依序在儀表板中啟用 CodeView ,以取得程式碼層次見解。

設定自訂服務名稱

您可以設定 INSTANA_SERVICE_NAME 環境變數,以設定應用程式的自訂服務名稱:

export INSTANA_SERVICE_NAME=MrBlueSky

另請參閱 一般參照: 語言感應器的環境變數

設定處理程序名稱

使用環境變數 INSTANA_PROCESS_NAME ,為代表 Ruby 處理程序的基礎架構實體設定自訂標籤。

分出 Web 伺服器和工作處理系統

對於諸如 Puma、Resque 或其他分出來執行工作的軟體套件,您應該新增配置,以通知 Instana 代理程式發生分出。

Puma

若為 Puma Web 伺服器,請將下列內容新增至 puma.rb 配置:

on_worker_boot do
  ::Instana.agent.after_fork if defined?(::Instana)
end

獨角獸

若為分出模式的 Unicorn ,請將下列區塊新增至 unicorn.rb 檔案:

after_fork do |server, worker|
  ::Instana.agent.after_fork if defined?(::Instana)
end

機架中介軟體

支援的架構 存在時,這個 Gem 會偵測並自動將 Instana Rack 中介軟體插入中介軟體堆疊。 我們目前正在新增對更多架構的支援。 如果您使用尚未檢測的架構,您可以使用下列指令來插入 Instana Rack 中介軟體:

require "instana/rack"
config.middleware.use ::Instana::Rack

... 或任何特定的中介軟體呼叫都適合您的架構。

管理代理程式背景執行緒

此代理程式會大量產生輕量型背景執行緒,以定期收集並報告度量值及追蹤資料。 依預設,這會使用標準 Ruby 執行緒。 如果您想要在替代執行緒系統 (例如動作者型執行緒) 中具有更大的控制權,並可能手動啟動代理程式報告,則可以使用下列方式來執行此動作:

gem "instana", :require => "instana/setup"

然後,在您選擇的背景執行緒中,直接呼叫:

::Instana.agent.start

請注意,此呼叫正在封鎖中。 它會啟動計時器的迴圈,定期收集並報告度量值和追蹤資料。 這應該只從已起始設定的背景執行緒內呼叫:

Thread.new do
  ::Instana.agent.start
end

記載

Instana 日誌程式是一種標準 Ruby 日誌程式,可記載除錯、警告、資訊等。 訊息,且可以設定如下:

require "logger"
::Instana.logger.level = ::Logger::WARN

gem 可以配置成改用您的應用程式日誌程式:

::Instana.logger = ::My.logger

依預設,當使用 Rails 時, Instana gem 會繼承並使用 Ruby on Rails 日誌程式。

除錯及更詳細

環境變數

INSTANA_DEBUG 設為非零值將啟用額外記載輸出,通常有助於開發及疑難排解。

另請參閱 一般參照: 語言感應器的環境變數

AWS Fargate

在 AWS Lambda 函數內執行時, Ruby 程式庫會遵循我們的 標準配置選項

AWS Lambda

在 AWS Lambda 函數內執行時, Ruby 程式庫會遵循我們的 標準配置選項

另請參閱