Einar  Hintz

Einar Hintz

1594785000

Ephemeral Jobs Monitoring Using Prometheus PushGateway

Within the software systems, most often than not we wanted to spin up some temporary services or jobs that can be terminated as soon as it performed a specific task. For example, if we want to send out user notifications everyday morning, then we don’t want that service to be running all day long, rather a service can spin up at a specific time, perform the task, and shutdown thereby effectively saving resources & cost.

As with any other long-running services, these ephemeral (or in Kubernetes term Batch or Cron) Jobs also needs to be monitored to gather critical metrics and for Altering when something goes wrong.

This article describes how we can monitor these short-lived jobs by explaining

  • What is the problem with Prometheus
  • What is PushGateway & why it is necessary
  • Demo using a sample application

Prometheus Architecture:

A short introduction about Prometheus if you haven’t known it already,

Prometheus is a Open-source metrics-based monitoring system that can record Multidimensional time-series data. It supports powerful querying, dashboard, and Alerting. Offers several integrations to connect to a variety of systems.

How does it work?

Prometheus uses a Pull model (also called Scraping) to collect metrics, meaning the Prometheus server will reach out to specified services by calling their configured HTTP endpoint to pull those metrics.

For example, the following configuration defined in prometheus.yml file tells the Prometheus servers to fetch metrics every 5s on the specified endpoint

scrape_configs:

- job_name: 'auth_server'
scrape_interval: 5s
static_configs:
- targets: ['auth.server.com:8080/metrics']

Problem?

Scarping is good for long-running services since those services will be available for a long time for the Prometheus servers to make a request and collect their metrics. This architecture is good, it helps to achieve a few other benefits such as health checks, no bottlenecks, etc.

But for short-lived services such as K8s Batch/Cron Jobs, by the time Prometheus decides to collect metrics, those pod might long be terminated

For these kinds of use cases, a Push model is necessary so that those services can publish its metrics when desired for example, during the shutdown

#serverless #devops #prometheus #programming #software-engineering #pushgateway

What is GEEK

Buddha Community

Ephemeral Jobs Monitoring Using Prometheus PushGateway
Einar  Hintz

Einar Hintz

1594785000

Ephemeral Jobs Monitoring Using Prometheus PushGateway

Within the software systems, most often than not we wanted to spin up some temporary services or jobs that can be terminated as soon as it performed a specific task. For example, if we want to send out user notifications everyday morning, then we don’t want that service to be running all day long, rather a service can spin up at a specific time, perform the task, and shutdown thereby effectively saving resources & cost.

As with any other long-running services, these ephemeral (or in Kubernetes term Batch or Cron) Jobs also needs to be monitored to gather critical metrics and for Altering when something goes wrong.

This article describes how we can monitor these short-lived jobs by explaining

  • What is the problem with Prometheus
  • What is PushGateway & why it is necessary
  • Demo using a sample application

Prometheus Architecture:

A short introduction about Prometheus if you haven’t known it already,

Prometheus is a Open-source metrics-based monitoring system that can record Multidimensional time-series data. It supports powerful querying, dashboard, and Alerting. Offers several integrations to connect to a variety of systems.

How does it work?

Prometheus uses a Pull model (also called Scraping) to collect metrics, meaning the Prometheus server will reach out to specified services by calling their configured HTTP endpoint to pull those metrics.

For example, the following configuration defined in prometheus.yml file tells the Prometheus servers to fetch metrics every 5s on the specified endpoint

scrape_configs:

- job_name: 'auth_server'
scrape_interval: 5s
static_configs:
- targets: ['auth.server.com:8080/metrics']

Problem?

Scarping is good for long-running services since those services will be available for a long time for the Prometheus servers to make a request and collect their metrics. This architecture is good, it helps to achieve a few other benefits such as health checks, no bottlenecks, etc.

But for short-lived services such as K8s Batch/Cron Jobs, by the time Prometheus decides to collect metrics, those pod might long be terminated

For these kinds of use cases, a Push model is necessary so that those services can publish its metrics when desired for example, during the shutdown

#serverless #devops #prometheus #programming #software-engineering #pushgateway

Carmen  Grimes

Carmen Grimes

1598959140

How to Monitor Third Party API Integrations

Many enterprises and SaaS companies depend on a variety of external API integrations in order to build an awesome customer experience. Some integrations may outsource certain business functionality such as handling payments or search to companies like Stripe and Algolia. You may have integrated other partners which expand the functionality of your product offering, For example, if you want to add real-time alerts to an analytics tool, you might want to integrate the PagerDuty and Slack APIs into your application.

If you’re like most companies though, you’ll soon realize you’re integrating hundreds of different vendors and partners into your app. Any one of them could have performance or functional issues impacting your customer experience. Worst yet, the reliability of an integration may be less visible than your own APIs and backend. If the login functionality is broken, you’ll have many customers complaining they cannot log into your website. However, if your Slack integration is broken, only the customers who added Slack to their account will be impacted. On top of that, since the integration is asynchronous, your customers may not realize the integration is broken until after a few days when they haven’t received any alerts for some time.

How do you ensure your API integrations are reliable and high performing? After all, if you’re selling a feature real-time alerting, you’re alerts better well be real-time and have at least once guaranteed delivery. Dropping alerts because your Slack or PagerDuty integration is unacceptable from a customer experience perspective.

What to monitor

Latency

Specific API integrations that have an exceedingly high latency could be a signal that your integration is about to fail. Maybe your pagination scheme is incorrect or the vendor has not indexed your data in the best way for you to efficiently query.

Latency best practices

Average latency only tells you half the story. An API that consistently takes one second to complete is usually better than an API with high variance. For example if an API only takes 30 milliseconds on average, but 1 out of 10 API calls take up to five seconds, then you have high variance in your customer experience. This is makes it much harder to track down bugs and harder to handle in your customer experience. This is why 90th percentile and 95th percentiles are important to look at.

Reliability

Reliability is a key metric to monitor especially since your integrating APIs that you don’t have control over. What percent of API calls are failing? In order to track reliability, you should have a rigid definition on what constitutes a failure.

Reliability best practices

While any API call that has a response status code in the 4xx or 5xx family may be considered an error, you might have specific business cases where the API appears to successfully complete yet the API call should still be considered a failure. For example, a data API integration that returns no matches or no content consistently could be considered failing even though the status code is always 200 OK. Another API could be returning bogus or incomplete data. Data validation is critical for measuring where the data returned is correct and up to date.

Not every API provider and integration partner follows suggested status code mapping

Availability

While reliability is specific to errors and functional correctness, availability and uptime is a pure infrastructure metric that measures how often a service has an outage, even if temporary. Availability is usually measured as a percentage of uptime per year or number of 9’s.

AVAILABILITY %DOWNTIME PER YEARDOWNTIME PER MONTHDOWNTIME PER WEEKDOWNTIME PER DAY90% (“one nine”)36.53 days73.05 hours16.80 hours2.40 hours99% (“two nines”)3.65 days7.31 hours1.68 hours14.40 minutes99.9% (“three nines”)8.77 hours43.83 minutes10.08 minutes1.44 minutes99.99% (“four nines”)52.60 minutes4.38 minutes1.01 minutes8.64 seconds99.999% (“five nines”)5.26 minutes26.30 seconds6.05 seconds864.00 milliseconds99.9999% (“six nines”)31.56 seconds2.63 seconds604.80 milliseconds86.40 milliseconds99.99999% (“seven nines”)3.16 seconds262.98 milliseconds60.48 milliseconds8.64 milliseconds99.999999% (“eight nines”)315.58 milliseconds26.30 milliseconds6.05 milliseconds864.00 microseconds99.9999999% (“nine nines”)31.56 milliseconds2.63 milliseconds604.80 microseconds86.40 microseconds

Usage

Many API providers are priced on API usage. Even if the API is free, they most likely have some sort of rate limiting implemented on the API to ensure bad actors are not starving out good clients. This means tracking your API usage with each integration partner is critical to understand when your current usage is close to the plan limits or their rate limits.

Usage best practices

It’s recommended to tie usage back to your end-users even if the API integration is quite downstream from your customer experience. This enables measuring the direct ROI of specific integrations and finding trends. For example, let’s say your product is a CRM, and you are paying Clearbit $199 dollars a month to enrich up to 2,500 companies. That is a direct cost you have and is tied to your customer’s usage. If you have a free tier and they are using the most of your Clearbit quota, you may want to reconsider your pricing strategy. Potentially, Clearbit enrichment should be on the paid tiers only to reduce your own cost.

How to monitor API integrations

Monitoring API integrations seems like the correct remedy to stay on top of these issues. However, traditional Application Performance Monitoring (APM) tools like New Relic and AppDynamics focus more on monitoring the health of your own websites and infrastructure. This includes infrastructure metrics like memory usage and requests per minute along with application level health such as appdex scores and latency. Of course, if you’re consuming an API that’s running in someone else’s infrastructure, you can’t just ask your third-party providers to install an APM agent that you have access to. This means you need a way to monitor the third-party APIs indirectly or via some other instrumentation methodology.

#monitoring #api integration #api monitoring #monitoring and alerting #monitoring strategies #monitoring tools #api integrations #monitoring microservices

Why Use WordPress? What Can You Do With WordPress?

Can you use WordPress for anything other than blogging? To your surprise, yes. WordPress is more than just a blogging tool, and it has helped thousands of websites and web applications to thrive. The use of WordPress powers around 40% of online projects, and today in our blog, we would visit some amazing uses of WordPress other than blogging.
What Is The Use Of WordPress?

WordPress is the most popular website platform in the world. It is the first choice of businesses that want to set a feature-rich and dynamic Content Management System. So, if you ask what WordPress is used for, the answer is – everything. It is a super-flexible, feature-rich and secure platform that offers everything to build unique websites and applications. Let’s start knowing them:

1. Multiple Websites Under A Single Installation
WordPress Multisite allows you to develop multiple sites from a single WordPress installation. You can download WordPress and start building websites you want to launch under a single server. Literally speaking, you can handle hundreds of sites from one single dashboard, which now needs applause.
It is a highly efficient platform that allows you to easily run several websites under the same login credentials. One of the best things about WordPress is the themes it has to offer. You can simply download them and plugin for various sites and save space on sites without losing their speed.

2. WordPress Social Network
WordPress can be used for high-end projects such as Social Media Network. If you don’t have the money and patience to hire a coder and invest months in building a feature-rich social media site, go for WordPress. It is one of the most amazing uses of WordPress. Its stunning CMS is unbeatable. And you can build sites as good as Facebook or Reddit etc. It can just make the process a lot easier.
To set up a social media network, you would have to download a WordPress Plugin called BuddyPress. It would allow you to connect a community page with ease and would provide all the necessary features of a community or social media. It has direct messaging, activity stream, user groups, extended profiles, and so much more. You just have to download and configure it.
If BuddyPress doesn’t meet all your needs, don’t give up on your dreams. You can try out WP Symposium or PeepSo. There are also several themes you can use to build a social network.

3. Create A Forum For Your Brand’s Community
Communities are very important for your business. They help you stay in constant connection with your users and consumers. And allow you to turn them into a loyal customer base. Meanwhile, there are many good technologies that can be used for building a community page – the good old WordPress is still the best.
It is the best community development technology. If you want to build your online community, you need to consider all the amazing features you get with WordPress. Plugins such as BB Press is an open-source, template-driven PHP/ MySQL forum software. It is very simple and doesn’t hamper the experience of the website.
Other tools such as wpFoRo and Asgaros Forum are equally good for creating a community blog. They are lightweight tools that are easy to manage and integrate with your WordPress site easily. However, there is only one tiny problem; you need to have some technical knowledge to build a WordPress Community blog page.

4. Shortcodes
Since we gave you a problem in the previous section, we would also give you a perfect solution for it. You might not know to code, but you have shortcodes. Shortcodes help you execute functions without having to code. It is an easy way to build an amazing website, add new features, customize plugins easily. They are short lines of code, and rather than memorizing multiple lines; you can have zero technical knowledge and start building a feature-rich website or application.
There are also plugins like Shortcoder, Shortcodes Ultimate, and the Basics available on WordPress that can be used, and you would not even have to remember the shortcodes.

5. Build Online Stores
If you still think about why to use WordPress, use it to build an online store. You can start selling your goods online and start selling. It is an affordable technology that helps you build a feature-rich eCommerce store with WordPress.
WooCommerce is an extension of WordPress and is one of the most used eCommerce solutions. WooCommerce holds a 28% share of the global market and is one of the best ways to set up an online store. It allows you to build user-friendly and professional online stores and has thousands of free and paid extensions. Moreover as an open-source platform, and you don’t have to pay for the license.
Apart from WooCommerce, there are Easy Digital Downloads, iThemes Exchange, Shopify eCommerce plugin, and so much more available.

6. Security Features
WordPress takes security very seriously. It offers tons of external solutions that help you in safeguarding your WordPress site. While there is no way to ensure 100% security, it provides regular updates with security patches and provides several plugins to help with backups, two-factor authorization, and more.
By choosing hosting providers like WP Engine, you can improve the security of the website. It helps in threat detection, manage patching and updates, and internal security audits for the customers, and so much more.

Read More

#use of wordpress #use wordpress for business website #use wordpress for website #what is use of wordpress #why use wordpress #why use wordpress to build a website

Gerhard  Brink

Gerhard Brink

1620692100

10 Latest Big Data Engineer Openings At Top Firms In India

Extras:

1| Senior Technical Architect at Thoucentric

Location: Bangalore

**Responsibilities: **

  • Design and implement data architecture and ETL for a niche data platform.
  • Bring in-depth understanding on Relational, Big Data and Cloud technologies.
  • Build client relationships and participate in business development and proposal work to grow a strong data engineering sub-practice.

Apply here.

2| Data Engineer at Thoucentric

Location: Bangalore

**Responsibilities: **

  • Build data crawlers to extract data from customers’ data sources using available ETL platforms, and troubleshoot the issues faced during data loading & processing.
  • Design and build data warehouse models in columnar databases.
  • Develop data processing scripts using SQL and optimise complex sequences of SQL Queries.

Apply here.

3| Big Data Engineer at Thoucentric

Location: Bangalore

Responsibilities:

  • Take ownership of end-to-end data-pipeline including system design and integrating required Big Data tools & frameworks.
  • Implementing ETL processes and constructing data warehouse (HDFS, S3, Azure etc.) at scale.
  • Analyse the source and target system data. Map the transformation that meets the requirements.

Apply here.

Find below the data engineer job openings:

#careers #aim weekly job alerts #aimrecruits #big data engineer jobs at top firms #big data engineers job #big data jobs #data science jobs #top firm data science jobs #weekly job openings list

15 Latest Data Science And Analyst Jobs To Apply For

For this week’s latest data science job openings, we have come up with a curated list of job openings for data scientists and analysts from last week.

Data Scientists Openings

Data Science Lead at Paytm Money

Location: Bangalore

Responsibilities:

#data science job search #data science jobs #data science jobs in india #latest data science job openings #latest data science jobs #onboarding data science jobs