2017-10-23所有文章 Luka Time in RailsRails 中的時間Rails 中的時間是個有趣的議題,如果不多加注意,很容易被雷到。尤其是一般在本地端開發的的時候並不會有時區不同的問題,但是一放到 Server 上,就會忽然爆炸。是不能不小心的一個問題。如果你在 config/app ... 繼續閱讀
2017-05-21所有文章 Luka Go - 在 OSX 安裝 GVM前言之前有寫過一篇用 Brew 安裝 GO,因為習慣上會用 rvm、nvm 來管理程式語言的版本,所以心血來潮也想試試看安裝 GVM 在作業環境,不過如標題所示,gvm Bug 滿多,而且跟我慣用的 Fish shell 不太相容。總結下來 ... 繼續閱讀
2017-05-20所有文章 Luka CORS in RailsProblem跨網域存取的時候需要使用 CORS 來讓不同網域也可以存取相同網域的資源。請看下圖,Server 返回的 Response 必須明確指出哪些網域可以存取該 Server 的資源。有這樣的行為模式的話,是不是可以在 Contro ... 繼續閱讀
2017-05-19所有文章 Luka EFK(6) - 使用 docker 包裝 FluentdAggregator 與 Forwarder 使用 docker 建立 fluentd image為了模擬需要的環境,我們來使用 docker 建立 fluentd image 參考fluent/fluentd-docker-image來製 ... 繼續閱讀
2017-05-18所有文章 Luka EFK(5) - Fluentd 高可用架構(High Availibity)架構之前我們的架構是直接由 fluentd td-agent 傳送到 elasticsearch (如下圖) 為了更高的可用性(High Availibity),我們在中間加入 aggregator 的角色,讓在 td-agent 扮演 ... 繼續閱讀
2017-05-17所有文章 Luka EFK(4) - 讓 Elasticsearch 與 Kibana 能夠接收 Rails 的 log架構 安裝步驟2.1 安裝 elasticsearch123$ curl -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.0.2.tar.gz$ ... 繼續閱讀
2017-05-16所有文章 Luka EFK(3) - Rails 與 Fluentd 的串接方法幾種可以跟 Rails 串接的方式 gem ‘fluent-logger’ Centralize Logs from Ruby Applications 自定解析 fluent/fluent-plugin-grok-parser: Flu ... 繼續閱讀
2017-05-15所有文章 Luka EFK(2) - 介紹 EFK (Elasticsaerch + Fluentd + Kibana)Fluentd 介紹 Fluentd 跟 Logstash 扮演的角色相同。過去 Logstash 的歷史有效能不佳的記錄,Fluentd 在效能上的口碑更好。如下圖所示,Fluentd 可以將蒐集 Log 負責的過程統一規格化。我們在使用 ... 繼續閱讀
2017-05-14所有文章 Luka EFK(1) - 介紹 ELK Stack( Elasticsearch + Logstash + Kibana)ELK整體架構 最左邊的 Logstash Shipper 用來運送 Log 到 Log 處理中心。 Redis 當做 Buffer 來緩衝資料量瞬間爆量的問題。 右邊的 Logstash 將 Log 加工成 Elasticserach、K ... 繼續閱讀
2016-11-09所有文章 Luka 在 OSX 環境中測試 etc/hosts 是否成功修改前言透過修改 etc/hosts 讓我們不需要透過 DNS 也能模擬網域名稱連線到伺服器。可是設定是否成功?這時候我們可以用一些測試工具來檢測之。 OSX環境下OSX 內建 dscacheutil 工具,可以用來檢測網址名稱對應 ip 的結 ... 繼續閱讀
2016-10-24所有文章 Luka Ruby - 讓 irb 更好用前言在使用pry的時候我們可以回到上一個輸入的指令,擁有記錄指令歷史的功能。其實irb也可以! 開始修改修改~/.irbrc 123require 'irb/ext/save-history'IRB.conf[:SAVE ... 繼續閱讀
2016-09-11所有文章 Luka Ruby metaprogramming - Open Class and Refine 簡介Open Class 是 Ruby 常用的技巧,指的是我們可以覆寫已經存在的方法,來修改物件或類別的行為。在這邊我沒有要講詳細的作法,要介紹的是在 Ruby 2.0 中新增的 refine RefineRefine 是 ruby 2.0 ... 繼續閱讀
2016-09-11所有文章 Luka Elasticsearch 筆記前言最近工作上使用的資料庫主要以 Elasticsearch 為主。而 Elasticsearch 跟傳統的關聯式資料庫有諸多的不同之處。初期在開發的時候並不是那麼快的上手。所以記錄下該如何使用 Elasticsearch 與如何在官方文件 ... 繼續閱讀
2016-09-10所有文章 Luka Ruby metaprogramming - Method Lookup介紹ruby metaprogramming 這本書除了教如何用 ruby 來生成其他的程式語言外,對語言特性的描述是比較深入的。因此在研讀這本書的同時,記錄下一些我覺得重要的部份。這些筆記不會依照章節的順序性。而是隨機記錄我需要的部分。 ... 繼續閱讀
2016-09-10所有文章 Luka Ruby - 爬網頁時遇到的編碼錯亂問題問題描述編碼問題是寫爬蟲常會遇到的問題。當你沒有處理好編碼問題,爬回來的網頁無法進行字串的切割,也無法使用 nokogiri 抽離需要的部份。 解決方法 找到原始網頁的編碼chartset='big' 把網頁 force_e ... 繼續閱讀