Tools - Troubleshooting Skills

Splunk

Search syntax
  • key=value AND OR NOT
  • | sort num(ip) desc, -str(url) | sort -value
  • | reverse
  • | top(or rare) limit=5 name
  • | head 5
  • | highlight fa, fb
  • | dedup fa
  • | stats count by method
  • | chart count by method url
  • | timechart span=15m count by url

earliest=“11/5/2017:20:00:00” latest=“11/12/2017:20:00:00”

Show only Certain Fields

| table field

(Not) contains a field

NOT fa=*

See all values in a field

| top a_number SourceName

Interesting Fields
  • Explore and know what values for a field
Events before or after X seconds
  • Show logs around current event
Visualizations Tab

Linux

crash or reboot?

ast -n2 -x shutdown reboot

  • If this reports a SYSTEM_SHUTDOWN followed by a SYSTEM_BOOT, all is well; however, if it reports 2 SYSTEM_BOOT lines in a row, then clearly the system did not shutdown gracefully

host $ip

Write Troubleshooting Friendly Program
  • Name your thread

Tips, Tricks and Gotchas

Chrome
Remove pdf password
Chrome -> Print -> Save As PDF
chrome://settings/cookies
chrome://settings/content/notifications?search=Notifications

Chrome Dev Tool
Bring Default Context Menu: Enable Copy Text
document.designMode = "on";

Command Menu - Cmd + Shift + P
Capture screenshots without extensions

Blogger
You have logged out from another location
Common approaches to handle website related issues: clear cache and cookie

Search for multiple labels
search/label/LABEL1+LABEL2
/search/?q=label:LABEL1|label:LABEL2

Gmail
Sometimes Gmail doesn't sort the replies by date in one conversation - maybe when different people reply different thread.

But Gmail seems already display threads that you have not read

- Example: Robinhood pdf

Robinhood upcoming earnings
https://robinhood.com/applink/upcoming_earnings

Lessons Learned about Programming and Soft Skills - 2018

Make things easier to (re)use
Example: LocalConnectToIF1, make other devs easier to use this trick by just setting a property, all other steps are coded.

Make it easier to search later

Add tag/text to help search: to-read, to-post etc
Bookmark or save important/useful links
Add it to favorites

Assume other person is probably doing the right thing
- You think it should implement like this, check the code/design, maybe it's already done this way, or maybe they have good reason to choose a different approach

Do research first
- usually the same problem has already been solved

Do some (quick, simple) (re)search on unknown things
- try to understand it, solve your questions
- is it good, when to use it, who use it, why?

- Example: bitcoin, block chain

Make applications work similar/same across all platforms
- unless there is good reason to not
Example: Robinhood Android vs iPhone

Ask questions before take time-consuming operation

Example: crossroads

Effective SearchReframe the search, be more specific
Example: chat scalable design -> websocket load balancing

Lessons Learned about Programming and Soft Skills - 2017

Programmers' Toolbox

Kafka
(different levels) Retry Queue and Dead Letter Queen

Redis
SETNX key value
LRU, LRU
- Sample 3 or 5 keys, maintain a larger pool of candidate keys (16)
Pipeline
- Queue in client side
Translation
- Multi, exec, abort
- queued in server side
- Continue to execute even some commands fail, no rollback
- Use Watch to implement CAS, fail the translation if the key changes
- pub/sub
- sorted sort(zset), 
- hyperloglog, PFADD, PFCOUNT

- service side lua script


OkHttp

WebSocket
- efficiency: persistent duplex, bidirection connection

Java - @ServerEndpoint
Socket.io

LevelDB/RocksDB

jq
jq '.pods[] | .name, .replication'
'.owner.name'
'.likes[0]'
.[] return all elements in the array

Labels

Java (161) Lucene-Solr (112) Interview (64) All (58) J2SE (53) Algorithm (45) Soft Skills (39) Eclipse (33) Code Example (31) JavaScript (23) Linux (22) Spring (22) Tools (22) Windows (22) Web Development (20) Nutch2 (18) Bugs (17) Debug (16) Defects (14) Text Mining (14) Troubleshooting (14) J2EE (13) Network (13) Tips (12) PowerShell (11) Chrome (10) Problem Solving (10) Design (9) How to (9) Learning code (9) Performance (9) Security (9) UIMA (9) html (9) Http Client (8) Maven (8) bat (8) blogger (8) Big Data (7) Database (7) Google (7) Guava (7) JSON (7) Shell (7) System Design (7) ANT (6) Coding Skills (6) Lesson Learned (6) Programmer Skills (6) Scala (6) css (6) Algorithm Series (5) Cache (5) Continuous Integration (5) IDE (5) adsense (5) xml (5) AIX (4) Become a Better You (4) Code Quality (4) Concurrency (4) GAE (4) Git (4) Good Programming Practices (4) Jackson (4) Life (4) Memory Usage (4) Miscs (4) OpenNLP (4) Project Managment (4) Review (4) Spark (4) Testing (4) ads (4) regular-expression (4) Android (3) Apache Spark (3) Distributed (3) Dynamic Languages (3) Eclipse RCP (3) English (3) Happy Hacking (3) IBM (3) J2SE Knowledge Series (3) JAX-RS (3) Jetty (3) Mac (3) Python (3) Restful Web Service (3) Script (3) regex (3) seo (3) .Net (2) Android Studio (2) Apache (2) Apache Procrun (2) Architecture (2) Batch (2) Bit Operation (2) Build (2) Building Scalable Web Sites (2) C# (2) C/C++ (2) CSV (2) Career (2) Cassandra (2) Fiddler (2) Google Drive (2) Gson (2) How to Interview (2) Html Parser (2) Http (2) Image Tools (2) JQuery (2) Jersey (2) LDAP (2) Logging (2) Software Issues (2) Storage (2) Text Search (2) xml parser (2) AOP (1) Application Design (1) AspectJ (1) Chrome DevTools (1) Cloud (1) Codility (1) Data Mining (1) Data Structure (1) ExceptionUtils (1) Exif (1) Feature Request (1) FindBugs (1) Firefox (1) Greasemonkey (1) HTML5 (1) Httpd (1) I18N (1) IBM Java Thread Dump Analyzer (1) Invest (1) JDK Source Code (1) JDK8 (1) JMX (1) Lazy Developer (1) Machine Learning (1) Mobile (1) My Plan for 2010 (1) Netbeans (1) Notes (1) Operating System (1) Perl (1) Problems (1) Product Architecture (1) Programming Life (1) Quality (1) Redhat (1) Redis (1) RxJava (1) Solutions logs (1) Team Management (1) Thread Dump Analyzer (1) Visualization (1) boilerpipe (1) htm (1) ongoing (1) procrun (1) rss (1)

Popular Posts