分類
發燒車訊

【原創】使用批處理腳本自動生成並上傳NuGet包

  Hello 大家好,我是TANZAME,我們又見面了。

  NuGet 是什麼這裏就不再重複啰嗦,園子里一搜一大把。今天要跟大家分享的是,在日常開發過程中如何統一管理我們的包,如何通過批處理腳本生成包並自動上傳到 NuGet。在實際項目開發過程中我們要上傳自己的包,一般的步驟都是:nuget spec => nuget pack => nuget push,一個包都要至少重複三個動作,如果有 N 個包那就要重複 N*3 次,想想都不能忍,所以便有了今天的分享主題。

  • 生成目錄

  既然是統一管理,生成的包自然是放在同一個文件夾,而不是分散在各個 .proj 目錄里。這裏我們在解決方案所在目錄新建一個目錄,這樣做的目的是方便 bat 腳本找到解決方案下面的子項目。比如我這裏新建的是 .nuget 這個目錄,需要注意的是如果目錄名稱有特殊字符的話不能直接右鍵新建,需要用命令提示符,直接在解決方案所在目錄使用快捷鍵 SHIFT + 右鍵 就能直接打開命令提示符,這樣可以省去一大堆 cd 的操作。

 

  • 下載 NuGet

  到 NuGet 官網下載命令行接口(CLI)。nuget.exe提供了完整的 nuget 功能, 可用於安裝、創建、發布和管理包, 而無需對項目文件進行任何更改。

  1. 請訪問 ,並選擇 NuGet 3.3 或更高版本(2.8.6 與 Mono 不兼容)。 始終建議使用最新版。若要將包發布到 nuget.org,版本至少必須是 4.1.0。
  2. 每次下載都直接下載 nuget.exe 文件。 讓瀏覽器將文件保存到選定文件夾。 此文件不 是安裝程序;如果直接在瀏覽器中運行,就不會看到任何內容。
  3. 將文件夾添加到 nuget.exe 中放置 PATH 環境變量的位置,這樣就可以從任意位置使用 CLI 工具。這裏我們把它放在上一步新建的 .nuget 文件夾下面,並設置 PATH 環境變量。

 

  • 生成清單

  是包含包元數據的 XML 清單, 此清單同時用於生成包以及為使用者提供信息。這個清單文件我們只需要生成一次,以後都不需要再重新生成。 .net Core 和使用sdk 特性.NET Standard 項目不需要 .nuspec 文件,如果是.net Core 和使用sdk 特性.NET Standard 項目則忽略此步驟。轉到項目所在目錄,SHIFT + 右鍵 調出命令提示符,輸入 nuget spec 命令即可生成我們所需要的包元數據清單。

 

  將這個清單文件剪切到第一步新建的 .nuget 文件夾,剪切過去後項目下面就不會憑空多出一個文件,看着清爽多了。然後做一下調整填入我們自己項目的相關信息, 比如像下面這樣:

<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd">
  <metadata>
    <id>TZM.XFramework</id>
    <version>$version$</version>
    <title>$title$</title>
    <authors>$author$</authors>
    <owners>$author$</owners>
    <license type="expression">Apache-2.0</license>
    <projectUrl>https://github.com/TANZAME/TZM.XFramework</projectUrl>
    <iconUrl>http://go.microsoft.com/fwlink/?LinkID=386613</iconUrl>
    <description>TZM.XFramework is a lightweight and high performance object-relational mapper for .NET use the original Entity Framework api.</description>
    <copyright>Copyright 2019</copyright>
    <tags>.NET SqlServer MSSQL Database Data O/RM ADO.NET</tags>
    <repository type="git" url="https://github.com/TANZAME/TZM.XFramework" />
    <dependencies />
    <frameworkAssemblies>
      <frameworkAssembly assemblyName="System.Data"/>
      <frameworkAssembly assemblyName="System.ComponentModel.DataAnnotations"/>
      <frameworkAssembly assemblyName="System.Net.Http"/>
    </frameworkAssemblies>
  </metadata>
</package>

 

  • 編寫腳本

  在第一步新建的文件夾里新建一個 bat 文件,重命名為 package.bat,接下來編寫我們的自動腳本。完整 bat 腳本,直接上代碼片段。

  1. 這裏我設置 nuget pack 包屬性為Release,並且不自動生成,所以需要先在 Release 模式下編譯完成再運行腳本。加上 -Build 參數的話輸出的信息太多看得賊難受,這裏把它去掉,我們自己手動編譯。
  2. 填充api_key。去 nuget 官網 登錄自己的帳號並創建一個 key,複製粘貼到 api_key 變量。
  3. 注意 .net framework 項目(fx)和 .net core 項目使用的命令不一樣
  4. 至此我們所有的準備步驟都已完成,雙擊 package.bat 運行腳本,解放雙手。
@echo off
set api_key=xxxxxxlef2j57rw4q26qcrvycvznyvcurgfxbzxxxxxxxx
set source_api_uri=https://api.nuget.org/v3/index.json
set startup_dir=%~dp0
cd ..\
set startup_dir=%cd%
cd .nuget

:: 打包 TZM.XFramework -Build
echo pack TZM.XFramework
copy TZM.XFramework.nuspec %startup_dir%\net45\TZM.XFramework
nuget pack %startup_dir%\net45\TZM.XFramework\TZM.XFramework.csproj -Properties Configuration=Release
del %startup_dir%\net45\TZM.XFramework\TZM.XFramework.nuspec
echo=

:: 打包 TZM.XFrameworkCore
echo pack TZM.XFrameworkCore
dotnet pack --no-build --configuration Release --output %startup_dir%\.nuget\ %startup_dir%\netcore\TZM.XFrameworkCore\TZM.XFrameworkCore.csproj

:: 批量推送包
for /R %cd% %%f in (*.nupkg) do ( 
echo=
dotnet nuget push %%f -k %api_key% -s %source_api_uri%
)

echo=
pause

  最後貼一張最終運行的效果圖:

  • 總結

   通過這個腳本,我們可以在一個文件夾里統一管理我們的包,做到一鍵生成、上傳同時保持項目文件的清爽,嗯簡直不要太方便 ~..~

   參考資料:

   技術交流群:816425449

本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※帶您來了解什麼是 USB CONNECTOR  ?

※自行創業 缺乏曝光? 下一步”網站設計“幫您第一時間規劃公司的門面形象

※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!!

※綠能、環保無空污,成為電動車最新代名詞,目前市場使用率逐漸普及化

※廣告預算用在刀口上,網站設計公司幫您達到更多曝光效益

※試算大陸海運運費!

分類
發燒車訊

大學生活這樣過,校招 offer 飛來找

01、開門見山

由於比較喜歡分享的原因,認識了不少大學生。其中有不少佼佼者,比如說一年讀 50 本書的璐璐,校招斬獲一線大廠 Offer 的曉峰,通過運營公眾號實現經濟獨立的帥土。

當然也有一些不知所措的,對未來。他們有些在文章底部留言,有些通過微信諮詢,還有一些在星球提問。每次我都認真地回答,他們也對我的熱情表示感謝。

我想着,不如把自己的心得經驗通過文章的形式分享出來,這樣就能夠給更多的大學生提供參照。如果你讀完這篇文章后,有所收穫,就把它分享給更多的人。

02、往事不可追

蘇聯作家尼古拉·奧斯特洛夫斯基的小說《鋼鐵是怎樣煉成的》裏面有這樣一句至理名言——人生最寶貴的是生命,生命屬於人只有一次。一個人的生命應當這樣度過:當他回憶往事的時候,他不致因虛度年華而悔恨,也不致因碌碌無為而羞愧

說來慚愧,回憶起我的大學時光,湧上心頭的是滿滿的悔恨和羞愧。

我參加過兩次高考。第一次的成績真實地反映出了我平常的水準,我自己心裏也像明鏡一樣。沒有努力就不會有超水平的發揮。這也恰好給了我復讀的勇氣:只要努把力,沒準就會有驚喜。

於是我從洛寧縣的一個二流高中輾轉去了平頂山市一高,下了很大的決心。結果呢,第二次的成績又真實地反映出了我平常的水準——意料之外卻也是情理之中,差二本線的分數和第一年完全一樣。

當時我幾乎放棄了上大學的打算,還去搬了一個月的磚。詳情可以查看之前寫的文章《》

後來實在是迫於無奈(身板不夠結實,搬不了幾塊磚),就聽從了同學的建議,志願上填了鄭州的一所大專。幸好專業服從了調劑,否則大專也上不了。我們學校錄取的分數當時蠻高的,最高分比一本線要高出一大截。大家之所以擠破頭想去,是因為學校最好的專業畢業后可以直接到國家電網上班,大多數人夢寐以求的工作。

而我呢,比最低分只高出了零分。可想而知,我調劑后的專業「計算機網絡」在學校是多麼的不受待見。專業課的老師們秉持着和我們一起共同成長的理念,而我們秉持着和老師們一起沉淪的信心。

上課的時候我帶着筆記本電腦在教室打遊戲,下課的時候我帶着筆記本電腦在宿舍打遊戲。除了周末去鄭州大學找女朋友散散心,我的大學生活過得是一塌糊塗,要多糟糕有多糟糕。

可以這麼說,和璐璐、曉峰、帥土比起來,我是一個不折不扣的反面教材。可正因為如此,我接下來給出的建議那可就十足的寶貴了。多麼痛的領悟!

03、積累項目經驗

不少大學生以為,大學期間就應該深入學習理論知識,實戰經驗並不重要,等到工作以後再實踐也不晚。但這真的是一個錯誤的認知啊,理論知識確實非常重要,但要記住一點:學以致用。

如果學到的理論知識不能夠應用於實戰當中,就好像我們手裡有一把南瓜子,卻沒有灑向肥沃的土壤。這樣的話,這些南瓜子就永遠只能是南瓜子,無法生根發芽,結出新的南瓜。更殘忍的是,這些南瓜子還會被我們吃進肚子里。

我隨手查閱了一些企業的校招要求,裏面明確要求要有一定的項目經驗。這就意味着如果沒有項目經驗,就無法找到工作;找不到工作,就不會有項目經驗。好像是一個死結唉。

也許這些校招要求過於苛刻了。說實話,我也應付不來。但我們應該知道,“人外有人,天外有天”,優秀的大學生多着呢,我們應付不來,他們一定能夠勝任。

那有些同學可能會抱怨道,我就是一名普通的大學生,我沒他們那麼優秀,我該怎麼辦?況且,誰會樂意把項目交給我來說呢?

別恐慌,別著急給自己設限。我之前認識一個同學,叫小曾。他說他們學校有一個群,裏面會不定期發布一些項目(企業網站、小商城等等),費用一般在 7K 左右。他缺錢的時候就找幾個宿友一起做。兩三年下來,自己主導的項目就有 3 個,還不帶輔助參与的。

雖然是廉價勞動力,但總比無所事事強得多。畢業的時候他就感覺像旅歐回來的足球運動員,成長特別大。也成功斬獲了網易的一個 Offer。

項目經驗嘛,沒必要非得是多麼大的項目,只要了解了項目的流程,有過思考和總結,有過入坑和爬坑,就是不可多得的項目經驗。

再多說一句,小曾有時候會把一些搞不定的項目外包出去,賺取一些差價。你一定會覺得我在胡侃,但我想表達的是,這就是我們認識的方式。人與人之間的差距,和年齡無關,只和認知有關

我只上過兩年大學,還一心撲在遊戲上,我的榮譽勳章上只有一個——掛科了三次,每次和同學們吹牛逼,我都要炫耀一番自己當年有多二。和同年齡段的小曾相比,我當時實在是弱爆了。我希望你以我為戒。

04、真正的實習

在知乎上看到一個神奇的問題:“想做一個程序員,一定要走培訓嗎?”這個問題的神奇之處就好像在問一個醫生:“我感冒了,一定要做個手術才能好嗎?”

我大三的時候就因為這樣的無知,被騙進了一家軟件培訓機構。現在回想起來,胸口不免隱隱作痛。我大學兩年,學的是 Java 編程語言,雖然說荒唐度日,但好歹做過仿 QQ 聊天工具的,多多少少有點底子的。

如果肯去一些招聘網站上尋找機會的話,也不會一無所獲。畢竟那時候的 Java 工程師也蠻吃香的。只是老師們沒有告訴我方法,我也沒有找到知心的大佬諮詢建議。於是連招聘網站都沒有上過,愚昧啊。

但不管怎麼說,。而實習是一個提高自己、接觸社會的絕佳機會。

首先,實習是有工資的。這一點特別重要,它讓我們擺脫了向父母伸手要錢的日子,有一種“翅膀長硬了”的感覺。儘管這份工資沒多少,但它證明我們對公司是有價值的。假如某個公司提倡“零工資”實習,那簡直是不要臉,不是真正的實習。

其次,實習是有實際工作的。這一點也特別重要,它能夠讓我們茁壯地成長,有一種必須要變強的感覺。儘管每一個任務的工作量都很小,但它證明公司是重視我們的。假如公司把實習生放在一個角落沒人管,那簡直是浪費生命,不是真正的實習。

最後,實習是有師父帶的。這一點千萬別忽視,它能夠讓我們更少犯錯、更快提高、更有收穫。儘管指導我們不是師父應盡的義務,但它證明公司是盡職盡責的。假如我們遇到的師父是負責任的,那麼謝天謝地謝師父吧。

我在實習期的表現還不錯,順利的拿到了公司的正式邀請。畢業后一直在這家公司干,直到三年半后回到洛陽。這段工作的記憶至今依然非常美好。

那除了培訓,還有什麼方法可以找到實習工作嗎?

當然有,有很多!

1)學校官網

千萬不要忽視這一點啊!儘管學校官網的主頁一般做得稀耙爛,迎面撲來一種濃厚的“閏土”氣息,但上面的信息還是挺有價值的。

下圖是我在鄭州大學的招生就業欄目中找到的招聘信息,更新日期為上一個工作日,蠻及時的。

一定要未雨綢繆,不要等畢業的時候再去關注,那恐怕就有點晚了。最好從大一就開始持續關注。為什麼呢?

如果一家企業從大一到畢業那年都在招聘,那就可以間接地說明這家企業運作的還不錯:要麼規模在擴大,要麼人員在流動,很良性,值得信賴。

2)網上渠道

我就不再推薦網站了,免得我有打廣告的嫌疑。只要你在搜索引擎里輸入“校園招聘”就會找到答案。去關注一些自己感興趣的公司,尤其是一些大廠,遇到心儀的就及時跟進。

3)朋友介紹

無論是實習找工作,還是正式找工作,朋友介紹永遠是最值得我們信賴的。這裏的“朋友”可不是躺在微信好友或者 QQ 好友列表裡的那些“占坑”朋友,而是經常有技術上的交流,生活中的交流的朋友。

怎麼去認識這些朋友呢?教你一招,想盡一切辦法聯繫上各大知識分享社區上的大佬,那些排名比較靠前的,手頭都會有一些內推的機會。

當然,前提是你有證明你很優秀的資本。

05、new 一個對象

好吧,我承認,我大學做的最正確的一件事就是——找了一個女朋友。是她,是她,就是她,讓我乏味的大學生活不再空虛寂寞冷。

,沒有對象就容易出現 NullPointerException。有了的話要注意安全,噓。

這個話題我不打算談得太多,畢竟我不是情感博主。唯一給同學們的建議就是:如果遇到合適的人,認真談一場戀愛吧

06、最後的建議

開復老師:就要畢業了。

回頭看自己所謂的大學生活,

我想哭,不是因為離別,而是因為什麼都沒學到。

我不知,簡歷該怎麼寫,若是以往我會讓它空白。

最大的收穫也許是……對什麼都沒有的忍耐和適應……

上面這段內容是一位同學寫給李開復老師的一封信,看完后我的眼淚一直在眼眶里打轉,因為他說出了我大二結束后的心聲。

李開復老師給出的回復是:讀大學時,你應當掌握這七項,學好自修之道、基礎知識、實踐貫通、興趣培養、积極主動、掌控時間、為人處事。

在我看來,這更像是對整個人生的建議。如果你來問我的話,我的回答就是以上你看到的這些內容。

謝謝大家的閱讀,原創不易,喜歡就隨手點個贊,這將是我最強的寫作動力。如果你覺得文章對你有所幫助,也蠻有趣的,就關注一下我的微信公眾號「沉默王二」,拜謝。

本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※專營大陸空運台灣貨物推薦

台灣空運大陸一條龍服務

※評比南投搬家公司費用收費行情懶人包大公開

南投搬家費用,距離,噸數怎麼算?達人教你簡易估價知識!

分類
發燒車訊

防野火再度釀災 澳洲科學家開發預測衛星

摘錄自2020年3月4日中央通訊社報導

澳洲國立大學(Australian National University)今天(4日)表示,校內研究團隊正在開發一枚「鞋盒大小」的衛星,運用紅外線偵測器來測量森林覆蓋面積和空氣濕度,盼獲得的資料能協助判斷很可能爆發野火的地點,及野火可能難以控制的地點。不過,距離正式啟用大概還要5年時間。

澳洲國立大學在聲明中說,這項科技將「專門用來偵測澳洲植被和林區的變化,例如針對易燃的尤加利樹」。

遙測專家耶夫拉(Marta Yebra)表示,新衛星收集到的資料將提供給消防人員。:「這項紅外線科技和首次能夠取得的資料,將有助控制特定起火點,進而降低野火發生的頻率、嚴重程度,及對澳洲民眾、經濟和環境帶來的長遠影響。」

研究人員指出,全球暖化正造成澳洲夏天時期更長,且爆發野火的危險越來越高。原因是冬天縮短,使得預防野火的工作更難執行。

本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※帶您來了解什麼是 USB CONNECTOR  ?

※自行創業 缺乏曝光? 下一步”網站設計“幫您第一時間規劃公司的門面形象

※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!!

※綠能、環保無空污,成為電動車最新代名詞,目前市場使用率逐漸普及化

※廣告預算用在刀口上,網站設計公司幫您達到更多曝光效益

※試算大陸海運運費!

分類
發燒車訊

蝗災入侵巴基斯坦 重創當地農作與經濟

摘錄自2020年3月5日公視報導

正當全球持續關注武漢肺炎疫情的當下,蝗蟲災害也在持續蔓延。源自於東非國家的蝗災,肆虐20多國,目前已入侵南亞的巴基斯坦。食量跟繁殖力驚人沙漠蝗蟲,重創當地農作物跟經濟收入,巴基斯坦已宣布全國進入緊急狀態。更值得注意的是,這波蝗災可能最快在6月入侵中國。

巴基斯坦目前正面臨蝗蟲入侵的空前危機,釀成當地27年來最嚴重的蝗災。蝗災已造成巴基斯坦農作物嚴重損失,尤其是棉花等經濟作物也面臨重創,該國宣布全國進入緊急狀態,公開向國際請求援助。

北京當局已承諾將協助巴國進行空中噴藥滅蟲,巴國也將從中國進口大量的殺蟲劑。聯合國糧農組織推測,沙漠蝗蟲到6月時,規模會比現在多500倍。而北京當局在防堵武漢肺炎的同時,也開始要為可能的蝗災傷腦筋。

本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

網頁設計公司推薦更多不同的設計風格,搶佔消費者視覺第一線

※廣告預算用在刀口上,網站設計公司幫您達到更多曝光效益

※自行創業 缺乏曝光? 下一步"網站設計"幫您第一時間規劃公司的門面形象

台灣寄大陸海運貨物規則及重量限制?

大陸寄台灣海運費用試算一覽表

南投搬家前需注意的眉眉角角,別等搬了再說!

分類
發燒車訊

搶救PM2.5!台中祭出高額電動車換購補貼

台中市政府持續推動低碳城市。為降低空氣汙染與PM2.5威脅,台中市環保局今年針對換購電動車推出加碼補助金,最高補助金額達新台幣3.3萬元,為全台最高。

目前台中市掛牌行駛的二行程機車有約25.4萬輛,其汙染較四行程機車而言,碳氫化合物高了17倍、一氧化碳也高了2倍。若改換成電動機車,每輛每年可減少0.149公斤的PM2.5與0.203公斤的PM10。為加速推動低碳城市、降低汽機車廢氣污染,台中市政府持續增建電動車充電站,目前已有203座;同時也祭出高額補貼,鼓勵民眾換購電動車。

台中市環保局表示,擁有中低收入戶證明、且二行程機車設籍於台中的台中市居民,汰換具有台灣電動機車認證(TES)核可的重型電動機車,最高可享新台幣3.38萬元的補助;小型與輕型電動機車最高補助則為3.18萬元。若是汰舊、換購電動自行車或電動輔助自行車,最高也有1.3萬元補助,皆為全台最高。

此外,一般台中市民新購置電動機車,最高可享有新台幣2.3萬補助;電動自行車或電動輔助自行車的貼最高6,000元。汰換舊的二行程機車獎勵金2,500元。上述相關補助都有名額限制,從3月14日開始受理申請。

本站聲明:網站內容來源於EnergyTrend https://www.energytrend.com.tw/ev/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※帶您來了解什麼是 USB CONNECTOR  ?

※自行創業 缺乏曝光? 下一步”網站設計“幫您第一時間規劃公司的門面形象

※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!!

※綠能、環保無空污,成為電動車最新代名詞,目前市場使用率逐漸普及化

※廣告預算用在刀口上,網站設計公司幫您達到更多曝光效益

※試算大陸海運運費!

分類
發燒車訊

聯合國出臺國際標準 規範電動車需發出與汽油車同等音量

日前,聯合國在日內瓦的歐洲總部召開會議,討論有關行車安靜的電動汽車(EV)等靠近行人時用聲音提醒的通知裝置,通過了主要內容為規定需發出與汽油車同等音量的安全標準方案。

有關行車聲音通知裝置的討論由“聯合國世界車輛法規協調論壇”展開。尤其將加強針對老年人和兒童的安全措施。通知裝置的標準基於日本車商的技術而制定。

通知裝置的人工聲音會在汽車啟動時到時速達到20公里之間發出。原則上時速為10公里時發出50到75分貝的聲音,時速20公里時為56到75分貝。倒車時為47分貝以上的音量,設定足夠引起路人注意的音量。

通常認為,汽油車在掛空擋時也會發出50分貝左右的噪音。人工聲音的音量也是按照該水準設定的。據悉,若時速超過20公里,即使是EV也會發出55分貝以上的噪音。

本站聲明:網站內容來源於EnergyTrend https://www.energytrend.com.tw/ev/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

網頁設計公司推薦更多不同的設計風格,搶佔消費者視覺第一線

※廣告預算用在刀口上,網站設計公司幫您達到更多曝光效益

※自行創業 缺乏曝光? 下一步"網站設計"幫您第一時間規劃公司的門面形象

台灣寄大陸海運貨物規則及重量限制?

大陸寄台灣海運費用試算一覽表

台中搬家,彰化搬家,南投搬家前需注意的眉眉角角,別等搬了再說!

分類
發燒車訊

Zabbix-(三)監控主機CPU、磁盤、內存並創建監控圖形

Zabbix-(三)監控主機CPU、磁盤、內存並創建監控圖形

一.前言

前文中已經講述了兩種方式對Zabbix的搭建,本文將講述如何在zaibbx上添加需要監控的主機,以及使用Zabbix自帶模板和自定義模板對主機的CPU、磁盤、內存進行監控,並觸發問題,並且在Zabbix儀錶盤創建實時監控圖形。

準備

  • Zabbix Server (Zabbix 4.4) (ip:192.168.152.140)
  • 被監控主機A (Centos7.6),下文簡稱 Server-A (ip:192.168.152.142)
  • 被監控主機B (Centos7.6),下文簡稱 Server-B (ip:192.168.152.143)

二.為被監控主機安裝zabbix-agent

  1. Server-A、Server-B分別安裝zabbix-agent

    # rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
    
    # yum install -y zabbix-agent

  2. Server-A、Server-B配置zabbix-agent

    # vim /etc/zabbix/zabbix_agentd.conf

    修改以下配置:

    • Server-A的zabbix_agentd.conf
    Server=192.168.152.140
    ServerActive=192.168.152.140
    
    # Hostname要與在Zabbix界面配置的Hostname(主機名稱)保持一致
    Hostname=Server-A
    • Server-B的zabbix_agentd.conf
    Server=192.168.152.140
    ServerActive=192.168.152.140
    
    # Hostname要與在Zabbix界面配置的Hostname(主機名稱)保持一致
    Hostname=Server-B

  3. 分別啟動zabbix-agent

    # systemctl start zabbix-agent

    可以查看agent日誌

    # tailf /var/log/zabbix/zabbix_agentd.log

    可能會出現以下內容,是由於zabbix界面上沒有配置主機,接下來將在zabbix頁面上進行主機配置

      6981:20191030:111132.151 no active checks on server [192.168.152.140:10051]: host [Server-A] not found

三.Zabbix添加主機

通過頁面操作,將需要監控的主機添加到zabbix中

  1. 登錄Zabbix,默認賬號:Zabbix,默認密碼:admin (可在zabbix數據庫 users表查詢)

  2. 點擊【配置】-【主機】-【創建主機】,添加需要被監控的主機

    首先配置【主機】信息,添加Server-A,輸入配置項

    配置項
    * 主機名稱 Server-A
    可見的名稱 Server-A
    * 群組 Linux servers (進行選擇)
    * agent代理程序的接口 IP地址: 192.168.152.142 端口: 10050

    再配置【模板】信息,點擊【添加】,選擇群組 Templates,勾選 Template OS Linux by Zabbix agent,點擊【選擇】

    最後點擊【保存】

  3. 在【主機】頁面可以看到Server-A已經成功添加了

    同時,Server-A的zabbix-agent日誌也不再打印

    注: 由於在之前在安裝Zabbix server時,也在zabbix server上安裝了zabbix-agent,因此圖例上除了Server-A主機以外,還有zabbix server主機

  4. 通過全克隆添加主機Server-B

    選擇需要複製的主機Server-A

    點擊【全克隆】(full clone)

    修改主機名稱agent IP地址等信息

    修改配置項
    *主機名稱 Server-B
    *agent IP 192.168.152.143

    最後點擊【添加】,等待Server-B與zabbix server建立通信

四.創建自定義模板(Template)

在添加主機步驟中,添加了2台需要監控的主機,添加監控項時也可以給每台主機單獨添加監控項,但是隨着主機數量增多,就會出現過多重複的操作,因此可以使用zabbix的Templates(模板)Items(監控項Triggers(觸發器)等眾多配置定義在模板中,將主機鏈接到定義好的模板上,就可以免去重複的操作。

下面將自定義模板,定義監控磁盤剩餘空間監控項,並配置觸發器當磁盤剩餘空間低於一定閾值時觸發告警。

  1. 創建自定義模板

    點擊【配置】-【模板】-【創建模板】

  2. 輸入模板信息,完成後點擊【添加】

    配置項
    * 模版名稱 Template Disk Free Size
    可見的名稱 Template Disk Free Size
    * 群組 Linux servers (選擇)
    描述 自定義磁盤剩餘空間模板

    注: 讀者也可以自定義一個群組,並在自定義群組中創建模板,這個步驟本文不再示範

五.創建磁盤剩餘空間監控項和觸發器

  1. 創建自定義磁盤監控項(Item)

    進入自定義模板的監控項模塊

    點擊【創建監控項】

    輸入監控參數

    配置項
    * 名稱 磁盤剩餘空間監控項
    類型 Zabbix 客戶端
    * 鍵值 vfs.fs.size[/,free]
    單位 B
    ……其他配置項 根據需要填寫

    這裏的鍵值 vfs.fs.size[/,free]是指,監控根路徑下,空餘的磁盤大小

    點擊【添加】

    注:創建監控項(Items)可以參考, 更多的鍵值(Keys)可以參考

  2. 創建觸發器(Trigger)

    觸發器可以配置當監控項監控到的數據達到一定閾值,從而觸發問題。

    在Template Disk Free Size模板中選擇【觸發器】,點擊【創建觸發器】

    輸入觸發器參數

    配置項
    * 名稱 磁盤剩餘空間觸發器
    嚴重性 嚴重(選擇)
    * 表達式/問題表現形式 {Template Disk Free Size:vfs.fs.size[/,free].last()}<15000000000 (可通過選擇監控項)
    事件成功迭代 恢復表達式(選擇)
    * 恢復表達式 {Template Disk Free Size:vfs.fs.size[/,free].last()}>=15000000000
    問題事件生成模式 多重(選擇)

    表達式/問題表示形式

    選擇已配置的磁盤剩餘空間監控項

    配置結果 < 15000000000, 監控項中單位為B,這裏15GB換算成15000000000B

    點擊【插入】,可以看到如下錶達式,表達式意思是,當檢測到磁盤弓箭剩餘不足15GB時,將觸發問題

    {Template Disk Free Size:vfs.fs.size[/,free].last()}<15000000000

    因此可以直接輸入問題恢復表達式,即磁盤剩餘空間高於15GB時,恢復問題

    {Template Disk Free Size:vfs.fs.size[/,free].last()}>=15000000000

    點擊【添加】

    再將該自定義模板,鏈接到Server-A、Server-B主機的模板中,參考,不過在篩選模板時,群組要選擇Linux servers(與創建模板時群組保持一致),添加後點擊【更新】

    進入【配置】-【主機】-【Server-A】(或者 Server-B)-【監控項】中,可以搜索到磁盤剩餘空間監控項已經添加成功

    注:如果監控項狀態不為【已啟動】可以查看zabbix server日誌進行排查

  3. 測試一下

    當前Server-A主機磁盤剩餘空間,為15G

    上傳一些文件到Server-A,此時磁盤剩餘空間為14G

    等待Zabbix監控到Server-A磁盤變化,查看儀錶盤,出現問題,配置成功

    刪除Server-A大文件,等待Zabbix監控到主機磁盤恢復,儀錶盤問題恢復

六.監控CPU空閑率

在添加主機時,由於已經鏈接了模板(該模板還鏈接了Template Module Linux CPU by Zabbix agent等若干個其他模板),Template Module Linux CPU by Zabbix agent模板自帶了許多監控項,其中包括CPU idle time 監控項,因此可以直接使用該監控項監控主機CPU空閑率數值,無需自定義監控項,只需要添加一個觸發器(Trigger)來讀取監控項觸發告警即可。

注: zabbix自帶模板中,有許多監控項可以直接利用起來,無需再單獨創建監控項,使用時可先在已有模板中查找下可用的監控項。

  1. 使用自帶模板中監控項

    直接使用CPU idle time 監控項即可,可以在【配置】-【主機】,【Server-A】的【監控項】中搜索到該監控項(在下圖中可以看到該監控項鏈接了模板)

  2. 在已有模板中添加觸發器(trigger)

    這裡在模板Template Module Linux CPU by Zabbix agent添加一個觸發器。

    點擊【配置】-【模板】搜索模板Template Module Linux CPU by Zabbix agent,並進入【觸發器】配置

    創建觸發器操作流程參考上面步驟中的,這裏說明一下配置參數

    配置項
    * 名稱 CPU空閑率觸發器
    嚴重性 嚴重 (選擇)
    表達式/問題表現式 {Template Module Linux CPU by Zabbix agent:system.cpu.util[,idle].avg(5m)}>=80
    事件成功迭代 恢復表達式(選擇)
    * 恢復表達式 {Template Module Linux CPU by Zabbix agent:system.cpu.util[,idle].avg(5m)}<80

    表達式/問題表現式:表示在5分鐘內CPU平均空閑率如果高於80%,那麼將觸發問題

    添加表達式示例:

    system.cpu.util[,idle]官方說明

    注:這裏修改了zabbix自帶的模板(Template Module Linux CPU by Zabbix agent),為其添加了一個新的觸發器,在實際使用中,要謹慎操作,因為鏈接了該模板的主機觸發器都會被修改,因此實際使用中需要對這種操作進行評估。

  3. 測試一下

    等待5分鐘,Zabbix server、Server-A、Server-B的CPU空閑率都高於80%,Dashboard界面觸發了問題,由於Zabbix server主機也鏈接了模板,因此修改Template Module Linux CPU by Zabbix agent模板,Zabbix server的CPU空閑率也被監控,所以在修改模板時要。

七.監控內存佔用率

在上面的步驟中添加了磁盤剩餘空間、CPU空閑率監控,直接使用了Zabbix 客戶端類型的監控項的鍵值,但是有些監控項可能不能直接獲取,需要通過計算的方式來獲取,例如監控內存佔用率,雖然可以使用vm.memory.size這個鍵值,但是得到值並不是我們所期望的,參考下面官方的解釋,雖然mode中有pused (used, percentage),但是“used”=”total – free”“available”=”free + buffers + cached”(內核版本Linux<3.14),實際是想要的值:

(available - total) / total

因此需要使用可計算的鍵值類型

官方對vm.memory.size以及參數解釋:

  1. 在Template OS Linux by Zabbix agent模板新增監控項

    配置項
    * 名稱 內存佔用率監控項
    類型 可計算的
    * 鍵值 memory.utilization (自定義)
    * 公式 100*(last(“vm.memory.size[total]”)-last(“vm.memory.size[available]”))/last(“vm.memory.size[total]”)
    信息類型 浮點數
    單位 %
    ……其他配置項 默認即可

    自定義鍵值可自己輸入,具體規則參考官方

這裏就不再創建觸發器了,感興趣的讀者可以自行創建,可參考上面的

八.Dashboard創建圖形

可以在首頁儀錶盤裡創建圖形,實時查看監控項的數據值。

  1. 回到zabbix首頁,點擊【編輯儀錶盤】-【添加構件】

  2. 創建磁盤剩餘空間圖形

    輸入基本信息

    添加【主機】和【監控項】

    左邊一欄選擇主機Server-A,右邊一欄選擇Server-A的磁盤監控項

    再【添加新數據集】,同樣操作將Server-B的磁盤監控也添加到圖形中

  3. 添加CPU空閑率圖形

    按照,添加Server-A,Server-B的CPU空閑率圖形

  4. 添加內存佔用率圖形

    同樣按照,添加Server-A,Server-B的內存佔用率圖形

  5. 保存設置並在儀錶盤中查看

    點擊【保存設置】

    在儀錶盤頁面查看圖形

九.參考文檔

本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※帶您來了解什麼是 USB CONNECTOR  ?

※自行創業 缺乏曝光? 下一步”網站設計“幫您第一時間規劃公司的門面形象

※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!!

※綠能、環保無空污,成為電動車最新代名詞,目前市場使用率逐漸普及化

※廣告預算用在刀口上,網站設計公司幫您達到更多曝光效益

※試算大陸海運運費!

分類
發燒車訊

2019全球電力碳排放降2% 達30年來最大降幅 歸因燃煤發電減少

環境資訊中心綜合外電;姜唯 編譯;林大利 審校

本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※帶您來了解什麼是 USB CONNECTOR  ?

※自行創業 缺乏曝光? 下一步”網站設計“幫您第一時間規劃公司的門面形象

※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!!

※綠能、環保無空污,成為電動車最新代名詞,目前市場使用率逐漸普及化

※廣告預算用在刀口上,網站設計公司幫您達到更多曝光效益

※試算大陸海運運費!

分類
發燒車訊

上世紀毒梟艾斯科巴 引入非洲河馬當寵物

摘錄自2020年3月11日公視報導

哥倫比亞上世紀最囂張的毒販——艾斯科巴,已經過世27年。不過他留下很特殊的遺產,就是他養的四頭寵物河馬,但這些年來族群數量暴增,數量已經超過60隻,變成大問題。

1980年代,富可敵國的毒梟艾斯科巴,把自家莊園變成野生動物園,引進大象、長頸鹿等稀有野生動物,包括四頭河馬。艾斯科巴死後,財產充公,他的豪華莊園變成主題公園。當局把珍禽異獸都送走,唯獨噸位龐大又暴躁的河馬難以處理,就撒手不管,留在莊園的大池塘。一公三母很快發展成大家族,突破圍欄,進駐1500公里長的馬格達萊納河,成為排擠在地生物的水陸霸主。河馬大量在水中排便的習性,也導致壞菌跟有害藻類增加,衝擊水質與生態體系。

河邊的多拉戴爾鎮,河馬逛大街已經司空見慣,隨著族群增加,朝人口稠密的地方擴散,未來攻擊人類的事件恐怕難以避免,民眾對此看法兩極。哥倫比亞去年第一次,在野外為母河馬動結紮手術,獸醫他們坦承,可能還做得不夠快,預計河馬數量將在未來10年增為四倍,最終可能達到數千隻之多。

動物福利
國際新聞
河馬
飼養

本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

網頁設計公司推薦更多不同的設計風格,搶佔消費者視覺第一線

※廣告預算用在刀口上,網站設計公司幫您達到更多曝光效益

※自行創業 缺乏曝光? 下一步"網站設計"幫您第一時間規劃公司的門面形象

台灣寄大陸海運貨物規則及重量限制?

大陸寄台灣海運費用試算一覽表

台中搬家,彰化搬家,南投搬家前需注意的眉眉角角,別等搬了再說!

分類
發燒車訊

車王電、華德動能聯手搶攻智慧電動巴士

台灣電動巴士廠商車王電與華德動能宣布,兩家公司將就電動公車展開智慧車聯網技術的研發工作,推出商務行動辦公室,最快在今年第四季就可量產。台灣、中國大陸與東南亞國家都是市場目標。

車王電董事長蔡裕慶表示,電動車結合車聯網的模式,未來將席捲全球,因此車王電與華德動能合作,整合端、網、雲系統,所涉及的技術包括:車載通訊、行動影音娛樂、先進駕駛安全輔助(ADAS)與行車管理等系統,推出專為電動巴士所設計的完整車聯網系統平台。

蔡裕慶表示,電動巴士加車聯網的全新營運模式,初期將會以台灣本土市場為主要目標,未來也會嘗試進入中國大陸、印度、香港、新加坡、越南等更多市場。他也指出,車王電與華德動能的合作主要在平台整合,進入各地市場之際,還會根據各市場的需求打造不同車體。

藉著智慧化車聯網平台方案,蔡裕慶估計每輛車輛的售價將可提高一至二成。他認為,車用電子市場潛力龐大,車聯網與綠能都是未來發展的主要潮流。

本站聲明:網站內容來源於EnergyTrend https://www.energytrend.com.tw/ev/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※帶您來了解什麼是 USB CONNECTOR  ?

※自行創業 缺乏曝光? 下一步”網站設計“幫您第一時間規劃公司的門面形象

※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!!

※綠能、環保無空污,成為電動車最新代名詞,目前市場使用率逐漸普及化

※廣告預算用在刀口上,網站設計公司幫您達到更多曝光效益

※試算大陸海運運費!