Soumettre la recherche
Mettre en ligne
Flamingo in Production
•
0 j'aime
•
154 vues
i-love-flamingo
Suivre
About Metrics, Logging and Tracing with Flamingo
Lire moins
Lire la suite
Logiciels
Signaler
Partager
Signaler
Partager
1 sur 19
Télécharger maintenant
Télécharger pour lire hors ligne
Recommandé
Flamingo Core Concepts
Flamingo Core Concepts
i-love-flamingo
Graphql with Flamingo
Graphql with Flamingo
i-love-flamingo
Flamingo Training - Hello World
Flamingo Training - Hello World
i-love-flamingo
Fast C++ Web Servers
Fast C++ Web Servers
Troy Miles
Managing VMware VMs with Ansible
Managing VMware VMs with Ansible
jtyr
Ruby meets Go
Ruby meets Go
NTT Communications Technology Development
C++ programming basics
C++ programming basics
Munazza-Mah-Jabeen
Altitude San Francisco 2018: WebAssembly Tools & Applications
Altitude San Francisco 2018: WebAssembly Tools & Applications
Fastly
Recommandé
Flamingo Core Concepts
Flamingo Core Concepts
i-love-flamingo
Graphql with Flamingo
Graphql with Flamingo
i-love-flamingo
Flamingo Training - Hello World
Flamingo Training - Hello World
i-love-flamingo
Fast C++ Web Servers
Fast C++ Web Servers
Troy Miles
Managing VMware VMs with Ansible
Managing VMware VMs with Ansible
jtyr
Ruby meets Go
Ruby meets Go
NTT Communications Technology Development
C++ programming basics
C++ programming basics
Munazza-Mah-Jabeen
Altitude San Francisco 2018: WebAssembly Tools & Applications
Altitude San Francisco 2018: WebAssembly Tools & Applications
Fastly
Js interpreter interpreted
Js interpreter interpreted
Martha Schumann
Elixir at Evercam (By Milos Mosic)
Elixir at Evercam (By Milos Mosic)
Evercam - Construction Time-lapse & Project Management Cameras
Virtualize and automate your development environment for fun and profit
Virtualize and automate your development environment for fun and profit
Andreas Heim
RedisGears: Meir Shpilraien
RedisGears: Meir Shpilraien
Redis Labs
Porting legacy apps to Griffon
Porting legacy apps to Griffon
James Williams
Devoxx UK 2018 - A cloud application journey with helm and kubernetes
Devoxx UK 2018 - A cloud application journey with helm and kubernetes
Ana-Maria Mihalceanu
RedisGears
RedisGears
MeirShpilraien
Basicsof c make and git for a hello qt application
Basicsof c make and git for a hello qt application
Dinesh Manajipet
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
Shengyou Fan
Real World Optimization
Real World Optimization
David Golden
Docker tips
Docker tips
Menghan Zheng
Gearman & PHP
Gearman & PHP
Nemanja Krivokapic
Helm - the Better Way to Deploy on Kubernetes - Reinhard Nägele - Codemotion...
Helm - the Better Way to Deploy on Kubernetes - Reinhard Nägele - Codemotion...
Codemotion
Introduction to Asynchronous scala
Introduction to Asynchronous scala
Stratio
Manage Kubernetes application complexity with Helm
Manage Kubernetes application complexity with Helm
Annie Talvasto
用 Kotlin 做自動化工具
用 Kotlin 做自動化工具
Shengyou Fan
Ansible Israel Kickoff Meetup
Ansible Israel Kickoff Meetup
ansibleil
Take Flight - Using Fly with the Play Framework
Take Flight - Using Fly with the Play Framework
Asher Glynn
Regular expressions, Alex Perry, Google, PyCon2014
Regular expressions, Alex Perry, Google, PyCon2014
alex_perry
Functional Programming with JavaScript
Functional Programming with JavaScript
Mark Shelton
Webinar - Unbox GitLab CI/CD
Webinar - Unbox GitLab CI/CD
Annie Huang
Kubeflow Development Environment
Kubeflow Development Environment
Weiqiang Zhuang
Contenu connexe
Tendances
Js interpreter interpreted
Js interpreter interpreted
Martha Schumann
Elixir at Evercam (By Milos Mosic)
Elixir at Evercam (By Milos Mosic)
Evercam - Construction Time-lapse & Project Management Cameras
Virtualize and automate your development environment for fun and profit
Virtualize and automate your development environment for fun and profit
Andreas Heim
RedisGears: Meir Shpilraien
RedisGears: Meir Shpilraien
Redis Labs
Porting legacy apps to Griffon
Porting legacy apps to Griffon
James Williams
Devoxx UK 2018 - A cloud application journey with helm and kubernetes
Devoxx UK 2018 - A cloud application journey with helm and kubernetes
Ana-Maria Mihalceanu
RedisGears
RedisGears
MeirShpilraien
Basicsof c make and git for a hello qt application
Basicsof c make and git for a hello qt application
Dinesh Manajipet
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
Shengyou Fan
Real World Optimization
Real World Optimization
David Golden
Docker tips
Docker tips
Menghan Zheng
Gearman & PHP
Gearman & PHP
Nemanja Krivokapic
Helm - the Better Way to Deploy on Kubernetes - Reinhard Nägele - Codemotion...
Helm - the Better Way to Deploy on Kubernetes - Reinhard Nägele - Codemotion...
Codemotion
Introduction to Asynchronous scala
Introduction to Asynchronous scala
Stratio
Manage Kubernetes application complexity with Helm
Manage Kubernetes application complexity with Helm
Annie Talvasto
用 Kotlin 做自動化工具
用 Kotlin 做自動化工具
Shengyou Fan
Ansible Israel Kickoff Meetup
Ansible Israel Kickoff Meetup
ansibleil
Take Flight - Using Fly with the Play Framework
Take Flight - Using Fly with the Play Framework
Asher Glynn
Regular expressions, Alex Perry, Google, PyCon2014
Regular expressions, Alex Perry, Google, PyCon2014
alex_perry
Functional Programming with JavaScript
Functional Programming with JavaScript
Mark Shelton
Tendances
(20)
Js interpreter interpreted
Js interpreter interpreted
Elixir at Evercam (By Milos Mosic)
Elixir at Evercam (By Milos Mosic)
Virtualize and automate your development environment for fun and profit
Virtualize and automate your development environment for fun and profit
RedisGears: Meir Shpilraien
RedisGears: Meir Shpilraien
Porting legacy apps to Griffon
Porting legacy apps to Griffon
Devoxx UK 2018 - A cloud application journey with helm and kubernetes
Devoxx UK 2018 - A cloud application journey with helm and kubernetes
RedisGears
RedisGears
Basicsof c make and git for a hello qt application
Basicsof c make and git for a hello qt application
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
Real World Optimization
Real World Optimization
Docker tips
Docker tips
Gearman & PHP
Gearman & PHP
Helm - the Better Way to Deploy on Kubernetes - Reinhard Nägele - Codemotion...
Helm - the Better Way to Deploy on Kubernetes - Reinhard Nägele - Codemotion...
Introduction to Asynchronous scala
Introduction to Asynchronous scala
Manage Kubernetes application complexity with Helm
Manage Kubernetes application complexity with Helm
用 Kotlin 做自動化工具
用 Kotlin 做自動化工具
Ansible Israel Kickoff Meetup
Ansible Israel Kickoff Meetup
Take Flight - Using Fly with the Play Framework
Take Flight - Using Fly with the Play Framework
Regular expressions, Alex Perry, Google, PyCon2014
Regular expressions, Alex Perry, Google, PyCon2014
Functional Programming with JavaScript
Functional Programming with JavaScript
Similaire à Flamingo in Production
Webinar - Unbox GitLab CI/CD
Webinar - Unbox GitLab CI/CD
Annie Huang
Kubeflow Development Environment
Kubeflow Development Environment
Weiqiang Zhuang
oSC-2023-Cross-Build.pdf
oSC-2023-Cross-Build.pdf
AdrianSchrter1
CI-CD WITH GITLAB WORKFLOW
CI-CD WITH GITLAB WORKFLOW
AddWeb Solution Pvt. Ltd.
Continuous Deployment with Kubernetes, Docker and GitLab CI
Continuous Deployment with Kubernetes, Docker and GitLab CI
alexanderkiel
Gitlab ci e kubernetes, build test and deploy your projects like a pro
Gitlab ci e kubernetes, build test and deploy your projects like a pro
sparkfabrik
Drone CI/CD 自動化測試及部署
Drone CI/CD 自動化測試及部署
Bo-Yi Wu
Dependencies Managers in C/C++. Using stdcpp 2014
Dependencies Managers in C/C++. Using stdcpp 2014
biicode
GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...
GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...
Oleg Shalygin
Gocd – Kubernetes/Nomad Continuous Deployment
Gocd – Kubernetes/Nomad Continuous Deployment
Leandro Totino Pereira
Start tracking your ruby infrastructure
Start tracking your ruby infrastructure
Sergiy Kukunin
Kubernetes best practices
Kubernetes best practices
Bill Liu
Working with the AOSP - Linaro Connect Asia 2013
Working with the AOSP - Linaro Connect Asia 2013
Opersys inc.
Docker Compose to Production with Docker Swarm
Docker Compose to Production with Docker Swarm
Mario IC
ContainerDayVietnam2016: Django Development with Docker
ContainerDayVietnam2016: Django Development with Docker
Docker-Hanoi
Life of a Chromium Developer
Life of a Chromium Developer
mpaproductions
Code and Deploy Angular to the Cloud
Code and Deploy Angular to the Cloud
Simona Cotin
DEVNET-2006 Coding 210: Parsing JSON in C++
DEVNET-2006 Coding 210: Parsing JSON in C++
Cisco DevNet
Build optimization mechanisms in GitLab and Docker
Build optimization mechanisms in GitLab and Docker
Dmytro Patkovskyi
Drone CI/CD Platform
Drone CI/CD Platform
Bo-Yi Wu
Similaire à Flamingo in Production
(20)
Webinar - Unbox GitLab CI/CD
Webinar - Unbox GitLab CI/CD
Kubeflow Development Environment
Kubeflow Development Environment
oSC-2023-Cross-Build.pdf
oSC-2023-Cross-Build.pdf
CI-CD WITH GITLAB WORKFLOW
CI-CD WITH GITLAB WORKFLOW
Continuous Deployment with Kubernetes, Docker and GitLab CI
Continuous Deployment with Kubernetes, Docker and GitLab CI
Gitlab ci e kubernetes, build test and deploy your projects like a pro
Gitlab ci e kubernetes, build test and deploy your projects like a pro
Drone CI/CD 自動化測試及部署
Drone CI/CD 自動化測試及部署
Dependencies Managers in C/C++. Using stdcpp 2014
Dependencies Managers in C/C++. Using stdcpp 2014
GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...
GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...
Gocd – Kubernetes/Nomad Continuous Deployment
Gocd – Kubernetes/Nomad Continuous Deployment
Start tracking your ruby infrastructure
Start tracking your ruby infrastructure
Kubernetes best practices
Kubernetes best practices
Working with the AOSP - Linaro Connect Asia 2013
Working with the AOSP - Linaro Connect Asia 2013
Docker Compose to Production with Docker Swarm
Docker Compose to Production with Docker Swarm
ContainerDayVietnam2016: Django Development with Docker
ContainerDayVietnam2016: Django Development with Docker
Life of a Chromium Developer
Life of a Chromium Developer
Code and Deploy Angular to the Cloud
Code and Deploy Angular to the Cloud
DEVNET-2006 Coding 210: Parsing JSON in C++
DEVNET-2006 Coding 210: Parsing JSON in C++
Build optimization mechanisms in GitLab and Docker
Build optimization mechanisms in GitLab and Docker
Drone CI/CD Platform
Drone CI/CD Platform
Plus de i-love-flamingo
Flamingo Carotene
Flamingo Carotene
i-love-flamingo
Flamingo Commerce Module Details
Flamingo Commerce Module Details
i-love-flamingo
Flamingo Commerce Intro
Flamingo Commerce Intro
i-love-flamingo
Flamingo Commerce Ports and Adapters
Flamingo Commerce Ports and Adapters
i-love-flamingo
Flamingo Microservice based E-Commerce / Motivations,Backgrounds, Short Intro...
Flamingo Microservice based E-Commerce / Motivations,Backgrounds, Short Intro...
i-love-flamingo
Flamingo Hello World Tutorial
Flamingo Hello World Tutorial
i-love-flamingo
Plus de i-love-flamingo
(6)
Flamingo Carotene
Flamingo Carotene
Flamingo Commerce Module Details
Flamingo Commerce Module Details
Flamingo Commerce Intro
Flamingo Commerce Intro
Flamingo Commerce Ports and Adapters
Flamingo Commerce Ports and Adapters
Flamingo Microservice based E-Commerce / Motivations,Backgrounds, Short Intro...
Flamingo Microservice based E-Commerce / Motivations,Backgrounds, Short Intro...
Flamingo Hello World Tutorial
Flamingo Hello World Tutorial
Dernier
Pharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodology
Anusha Are
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
kalichargn70th171
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
HimanshiGarg82
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
alwaysnagaraju26
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
aagamshah0812
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
Jhone kinadey
Direct Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension Aid
Philip Schwarz
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
kalichargn70th171
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
shikhaohhpro
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
AmarnathKambale
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
Willy Marroquin (WillyDevNET)
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
panagenda
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Alberto González Trastoy
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
masabamasaba
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
Jittipong Loespradit
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
Fatema Valibhai
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
proinshot.com
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
ComplianceQuest1
Dernier
(20)
Pharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodology
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
Direct Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension Aid
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
Flamingo in Production
1.
Flamingo in Production
2.
Contents • Compilation /
CI • Deployment Artifacts • Metrics • Tracing • Logging
3.
Compilation / CI •
Go: standalone Binary, no external dependencies • GOOS=linux • GOARCH=amd64 • CGO_ENABLED=0 • CI: • go test -race -vet=all ./...
4.
Running Flamingo • Behind
a Load Balancer • Nginx • Kubernetes Ingress • New: Caddy builtin • Auto TLS (Letsencrypt) • config/Caddyfile support
5.
Deployment Artifacts • Bundle: •
Config Files • (Templates) • Artifact: • Docker • Tarball/Zipball
6.
example/dist/Dockerfile # Builder FROM golang:alpine
AS builder RUN apk update && apk add --no-cache ca-certificates tzdata git && update-ca-certificates COPY . /app RUN cd /app && CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o app . # Final image FROM scratch # add timezone data and ssl root certificates COPY --from=builder /usr/share/zoneinfo /usr/share/zoneinfo COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ # add artifacts #ADD config /config # add binary COPY --from=builder /app/app /app ENTRYPOINT ["/app"] CMD ["serve"]
7.
Running/Operating Flamingo
8.
Logging • inject flamingo.Logger •
Based on Uber's ZAP logger • JSON • colors • tags
9.
OpenCensus
10.
OpenCensus • Metrics • Served
on a different port (13210 via systemendpoint module) • Tracing • Pushed to Jaeger/Zipkin
11.
Metrics• Time Series •
Prometheus
12.
Tracing • Opencensus • Trace:
Operation spanning multiple applications • Span: Isolated operation, can have multiple children • Trace Propagation: • B3-Header • W3 Trace Context
13.
Tracing • Exporter • Jaeger •
Zipkin • (Stackdriver) • (AWS XRay)
14.
Hands On
15.
Hands On • Checkout
... • make jaeger • go run . serve
16.
Add a metric var
measure = stats.Int64("mymeasure", "my measure", stats.UnitMilliseconds) func init() { view.SetReportingPeriod(100 * time.Millisecond) opencensus.View( "mymetric", measure, view.Distribution(1, 10, 100, 250, 500), ) }
17.
Collect a metric stats.Record(ctx,
measure.M(int64(n)))
18.
Add a trace ctx,
span := trace.StartSpan(ctx, "my/span") defer span.End()
19.
Log information type controller
struct { logger flamingo.Logger } func (c *controller) Inject(logger flamingo.Logger) { c.logger = logger } func (c *controller) action(ctx context.Context, req *web.Request) web.Result { c.logger.WithField("duration", n).Info("sleeping") }
Télécharger maintenant