Time in Rails

Rails 中的時間Rails 中的時間是個有趣的議題,如果不多加注意,很容易被雷到。尤其是一般在本地端開發的的時候並不會有時區不同的問題,但是一放到 Server 上,就會忽然爆炸。是不能不小心的一個問題。如果你在 config/app ...
繼續閱讀
Go - 在 OSX 安裝 GVM

Go - 在 OSX 安裝 GVM

前言之前有寫過一篇用 Brew 安裝 GO,因為習慣上會用 rvm、nvm 來管理程式語言的版本,所以心血來潮也想試試看安裝 GVM 在作業環境,不過如標題所示,gvm Bug 滿多,而且跟我慣用的 Fish shell 不太相容。總結下來 ...
繼續閱讀
CORS in Rails

CORS in Rails

Problem跨網域存取的時候需要使用 CORS 來讓不同網域也可以存取相同網域的資源。請看下圖,Server 返回的 Response 必須明確指出哪些網域可以存取該 Server 的資源。有這樣的行為模式的話,是不是可以在 Contro ...
繼續閱讀
EFK(6) - 使用 docker 包裝 Fluentd

EFK(6) - 使用 docker 包裝 Fluentd

Aggregator 與 Forwarder 使用 docker 建立 fluentd image為了模擬需要的環境,我們來使用 docker 建立 fluentd image 參考fluent/fluentd-docker-image來製 ...
繼續閱讀
EFK(5) - Fluentd 高可用架構(High Availibity)
EFK(4) - 讓 Elasticsearch 與 Kibana 能夠接收 Rails 的 log
EFK(3) - Rails 與 Fluentd 的串接方法
EFK(2) - 介紹 EFK (Elasticsaerch + Fluentd + Kibana)

EFK(2) - 介紹 EFK (Elasticsaerch + Fluentd + Kibana)

Fluentd 介紹 Fluentd 跟 Logstash 扮演的角色相同。過去 Logstash 的歷史有效能不佳的記錄,Fluentd 在效能上的口碑更好。如下圖所示,Fluentd 可以將蒐集 Log 負責的過程統一規格化。我們在使用 ...
繼續閱讀
EFK(1) - 介紹 ELK Stack( Elasticsearch + Logstash + Kibana)

在 OSX 環境中測試 etc/hosts 是否成功修改

前言透過修改 etc/hosts 讓我們不需要透過 DNS 也能模擬網域名稱連線到伺服器。可是設定是否成功?這時候我們可以用一些測試工具來檢測之。 OSX環境下OSX 內建 dscacheutil 工具,可以用來檢測網址名稱對應 ip 的結 ...
繼續閱讀

Ruby - 讓 irb 更好用

前言在使用pry的時候我們可以回到上一個輸入的指令,擁有記錄指令歷史的功能。其實irb也可以! 開始修改修改~/.irbrc 123require 'irb/ext/save-history'IRB.conf[:SAVE ...
繼續閱讀

Ruby metaprogramming - Open Class and Refine

簡介Open Class 是 Ruby 常用的技巧,指的是我們可以覆寫已經存在的方法,來修改物件或類別的行為。在這邊我沒有要講詳細的作法,要介紹的是在 Ruby 2.0 中新增的 refine RefineRefine 是 ruby 2.0 ...
繼續閱讀

Elasticsearch 筆記

前言最近工作上使用的資料庫主要以 Elasticsearch 為主。而 Elasticsearch 跟傳統的關聯式資料庫有諸多的不同之處。初期在開發的時候並不是那麼快的上手。所以記錄下該如何使用 Elasticsearch 與如何在官方文件 ...
繼續閱讀
Ruby metaprogramming - Method Lookup

Ruby metaprogramming - Method Lookup

介紹ruby metaprogramming 這本書除了教如何用 ruby 來生成其他的程式語言外,對語言特性的描述是比較深入的。因此在研讀這本書的同時,記錄下一些我覺得重要的部份。這些筆記不會依照章節的順序性。而是隨機記錄我需要的部分。 ...
繼續閱讀

Ruby - 爬網頁時遇到的編碼錯亂問題

問題描述編碼問題是寫爬蟲常會遇到的問題。當你沒有處理好編碼問題,爬回來的網頁無法進行字串的切割,也無法使用 nokogiri 抽離需要的部份。 解決方法 找到原始網頁的編碼chartset='big' 把網頁 force_e ...
繼續閱讀