abtestingGateway錯誤集錦

2021-09-08 05:26:59 字數 2195 閱讀 3179

系統版本

核心版本

ubuntu 14.04.2

3.13.0-32-generic

我們在這裡通過curl來插入命令的時候直接報錯:

curl命令寫入規則

curl '' -d ']}'
2018/10/23 17:44:28 [error] 8738#0: *1090 lua entry thread aborted: runtime error: /opt/nginx/lua_gray/admin/ab_action.lua:5: loop or previous error loading module 'abtesting.utils.utils'  

stack traceback:

coroutine 0:

[c]: in function 'require'

/opt/nginx/lua_gray/admin/ab_action.lua:5: in function , client: 127.0.0.1, server: localhost, request: "post /ab_admin?token=zuesx&action=policy_set http/1.1", host: "127.0.0.1:8080"

上面的報錯很明顯,又提示進入呼叫死迴圈關係或者前期錯誤當載入'abtesting.utils.utils' 模組的時候,怎麼辦呢?

然後重啟nginx即可。

如下所示:

# ldconfig

# supervisorctl

nginx running pid 8737, uptime 0:10:03

supervisor> restart nginx

nginx: stopped

nginx: started

yield報錯

管理介面通過curl(同上)寫入規則的時候,報這個錯誤

attempt to yield across metamethod/c-call boundary
這個的話,我是重新安裝了這幾步

原版本lua 5.1

luajit 2.0.2

tengine是2.2.0,

安裝後的版本是

lua5.1

luajit 2.0.5

tengine是2.2.0

其實公升級的就是luajit而已,主要是安裝完luajit後,需要重新編譯下tengine,並且我這裡使用lua-nginx-module版本是lua-nginx-module-0.10.13

redis連線提示operation refused

我把ab部署到阿里雲後,在阿里雲開了乙個redis,redis使用的網域名稱連線,然後我在server段的redis配置,把$redis_host的位址設定為了 ***.aliyun.com,這個網域名稱就是redis連線網域名稱。於是啟動nginx+ab,發現在業務流量分流的時候,nginx日誌裡面總是提示 連線redis失敗,所以灰度名單分流也失敗,但是發現規則增刪改查的介面都沒有問題,也就是沒有提示任何連線redis失敗的原因,我剖析ab的原始碼,發現都是共用乙個redis模組,或者說共用乙個redis方法來實現連線的,為什麼管理介面的卻沒有事呢,關鍵這個operation refused並沒有提示更多有用的資訊,於是我把連線redis的那段**,把err資訊全部通過ngx.say這樣的方式列印出來,發現完整的報錯資訊是***.aliyuncs.com could not be resolved (5: operation refused),得,這很明顯了,是redis網域名稱無法解析出來。

根因找到了,那麼就分析為啥會這樣的,我仔細檢視nginx的配置檔案,發現有問題的那個業務配置檔案,有一行這樣的配置:resolver ***.***.***.*** valid=300s,然後我又仔細上nginx官網查詢了下這個resolver的配置,官網解釋請戳這裡 , 意思是說這個resolver的配置是表明這個server的所有網域名稱解析都是用這個dns伺服器來解析,而redis的網域名稱是阿里雲內部的網域名稱,使用剛才配置單的那個dns,根本無法解析,所以才會提示redis連線不上了。

找到為什麼會導致無法連線redis的原因後,我們就開始整改了,把resolver去掉或者新增乙個阿里雲的dns即可。新增完成後重啟nginx就可以正常使用ab分流功能了。

cacti 錯誤集 snmp錯誤

基本介紹 這裡是cacti的錯誤記錄 錯誤集 1.cacti的snmp error 第一,確定cacti所有的主機能ping通被監控主機 如果不能ping通,請確認網路配置和被監控主機的ip設定是否正確。第二,如果能ping通,那麼確認被監控主機是否啟用snmpd服務 ps ef grep snmp...

http錯誤錦集

http 400 請求無效 http 401.1 未授權 登入失敗 http 401.2 未授權 伺服器配置問題導致登入失敗 http 401.3 acl 禁止訪問資源 http 401.4 未授權 授權被篩選器拒絕 http 401.5 未授權 isapi 或 cgi 授權失敗 http 403 ...

hive錯誤錦集

我的hive錯誤錦集 1 效能問題 乙個條件的錯誤 在去年寫了乙個hive指令碼,今年需求有變,條件細分。於是指令碼改動較大,也沒有考慮太多就開始改動。完成後測試執行速度,發現執行時間為改動前的三倍,當時需求很急,草草跑出資料提交了。後來又需要該指令碼來用,才想起來效率問題,於是開始研究速度慢下來的...