Skip to content

Commit

Permalink
Progress on the monitoring presentation
Browse files Browse the repository at this point in the history
  • Loading branch information
Patrick Valsecchi committed May 1, 2017
1 parent fd8a880 commit f81143b
Show file tree
Hide file tree
Showing 4 changed files with 41 additions and 19 deletions.
Binary file added docs/monitoring_presentation/c2c.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/monitoring_presentation/c2corg.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
60 changes: 41 additions & 19 deletions docs/monitoring_presentation/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -11,18 +11,16 @@
h1, h2, h3 {
font-family: 'Droid Serif';
font-weight: normal;
color: #FF680A;
}
img { width: 100%; }
.remark-code, .remark-inline-code {
font-family: 'Ubuntu Mono';
font-size: 20px;
}
.smallImage { width: 60%; display: table; margin: 0 auto;}
div.black { background-color: black; }
.black img { height: 90%; width: auto; }
div.remark-slide-content {
background-image: url("C2C-logo-RGB.svg");
background-size: 200px 40px;
background-size: 200px 35px;
background-position: 95% 15px;
font-size: 28px;
}
Expand All @@ -34,6 +32,12 @@
.title-slide .remark-slide-number {
display: none;
}
.c2cbackground {
background-image: url("c2c.png") !important;
background-position: center !important;
background-repeat: no-repeat !important;
background-size: 100% !important;
}
</style>
</head>
<body>
Expand All @@ -42,28 +46,44 @@
count: false

---

class: center, middle

# Getting metrics from a Pyramid application

---
class: c2cbackground

# Who is Camptocamp?

* Open Source Editor and Service Provider
* Staff 68
* Since 2001
* Geospatial
* Complex infrastructure hosting (high availability, scalability)
* Business (Odoo)


---

# Plan
![Schweizmobil 3D](schweizmobil3d.png)

1. Introduction
1. Typical Architecture
1. How we do it
1. The results
1. Conclusion
---

![c2c.org](c2corg.png)

---

# Introduction

* Why do we need metrics?
* Monitoring
* Profiling
* Several high visibility customer projects
* Irregular loads
* Continuous deployment could introduce higher loads
* Availablity requirement
* The current CPU/load level monitoring is not enough (granularity)
* Who needs metric?
* Sysadmin (sizing, what is broken)
* Developers (optimization, debug)
* How to get metrics?

---
Expand All @@ -90,16 +110,15 @@

* CEE allows to stucture the logs using JSON
* Allows better filtering and analysis downstream
* Some project generate more the 1000 logs/seconds


---

# c2cwsgiutils

https://github.com/camptocamp/c2cwsgiutils

A glue between Pyramid, SQLAlchemy (PostgresQL), statsd, syslog and other utilities to facilitate the development of
REST services.
A glue between Pyramid, SQLAlchemy (PostGIS), statsd, syslog and others to facilitate the development of
geographical REST services.

* Statsd metrics
* Generic timers (routes, rendering, Alembic hooks)
Expand All @@ -125,7 +144,9 @@
config.include(c2cwsgiutils.pyramid.includeme)
models.init(config)
health_check = HealthCheck(config)
health_check.add_db_session_check(models.DBSession, at_least_one_model=models.Hello)
health_check.add_db_session_check(
models.DBSession,
at_least_one_model=models.Hello)
config.scan("my_app.services")
return config.make_wsgi_app()

Expand All @@ -141,7 +162,8 @@
from c2cwsgiutils import services
from c2cwsgiutils.stats import timer_context

hello_service = services.create("hello", "/hello", cors_credentials=True)
hello_service = services.create("hello", "/hello",
cors_credentials=True)

@hello_service.get()
def hello_get(request):
Expand Down
Binary file added docs/monitoring_presentation/schweizmobil3d.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit f81143b

Please sign in to comment.