My latest product Apex Logs is now in open beta! Apex Logs is a structured and plain-text log management solution, with a minimal design, simple API, a rich query language, and flexible alerting integrations.

On top of that Apex Logs currently has the most competitive pricing in the industry, up to 10 times more cost-effective than the offerings from Papertrail, Loggly, DataDog, and others at only $0.35/GB (ingested).

Let’s take a look!

Image for post
Image for post

Exploring the API

I love really simple APIs, I think it should be as easy as possible for customers to interact with your products, so I created and open-sourced the apex/rpc project, a schema-based RPC-style API client & server generator. …


Serverless technologies are lowering the barrier to entry for global deployments with on-demand pricing and scaling. AWS’ serverless offerings are now supported in 16 regions, and with the help of Up Pro’s latest v1.2.0 release we’re going to take a look at setting up a globally distributed app to decrease latency for your customers.

Image for post
Image for post

Before we get started, if you want to follow along first install Up:

$ curl -sf https://up.apex.sh/install | sh

Then create a new directory with the following main.go file:

Edge-optimized APIs

First let’s take a look at how the “edge” optimized API Gateway endpoint type works, as they’re the default in Up. …


Just a quick post highlighting some of the changes made since Apex Up v0.5.0!

If you’re unfamiliar with Up, it’s a command-line tool to help you deploy and manage near-infinitely scalable serverless web applications and APIs on AWS. You can deploy as many applications as you need, for the fraction of the price of other providers, with zero operational maintenance or manual scaling efforts.

Image for post
Image for post

IAM Policies

AWS uses IAM policies to permit access to various operations against resources, such as allowing read-write access to DynamoDB.

Up now allows you to specify additional policy statements for the Lambda function’s role as shown in the following snippet. …


This small release introduces custom stages, stage-level configuration overrides, instant rollbacks and a few other refinements for Up the serverless deployment tool.

Image for post
Image for post
Photo by Yousef Espanioly on Unsplash

Custom Stages

The most notable change in v0.5.0 is the addition of custom stages—you’re no longer bound to staging and production — you may define as many stages as you need for your teams or features.

The development stage is now reserved for local use, and Up now deploys to staging by default. This lets you do things like override the command run locally, for example if you use the gin hot reloading tool in Golang you would override the proxy.command


This is the first official release of Up Pro, which includes a number of improvements over the open-source version for production applications.

If you’re unfamiliar with Up, it’s a tool which helps you manage and deploy serverless apis, apps and websites in seconds to your own AWS infrastructure. In short: it’s the easiest way to deploy Node.js, Golang, Python among others to AWS, and can cost as little as $1/mo to run or in some cases free.

Image for post
Image for post

Onboarding Improvements

Deploying with Up was easy from day one, but with this release I focused a bit more on onboarding to make the process even smoother. …


Image for post
Image for post

Many Apex Up users have been asking about integration with continuous integration platforms, this post walks through staging and deploying Up to production using Semaphore CI.

Serverless Up applications typically deploy in a few seconds from a laptop, however with a poor network connection you may want to consider CI, not only to improve workflow and testing, but for the improved upload speed.

Semaphore is my CI of choice — it has a clean design, lets you easily encrypt the env variables, schedule timed builds, and doesn’t require you to litter your repositories with dotfiles. …


Image for post
Image for post

I’m back from a little vacation with a new release of Apex Up! This release introduces custom domains, domain purchasing from the command-line, improved logging support, and more. As usual, run up upgrade to update!

If you’re new to Up, it provides tooling enabling your team to deploy and manage “infinitely” scalable serverless apps, apis, and websites in seconds to your own infrastructure (currently supporting AWS Lambda).

Up lets you write vanilla applications using the framework(s) you already know and love, pay for only what you use, and never worry about infrastructure again.

Purchasing domains

A lesser-known feature of AWS Route53 is that you can purchase domains! Up exposes this functionality, allowing you to easily check availability and purchase domains from the command-line. …


Image for post
Image for post

This post walks through the creation of a serverless Slack command written in Golang, and deployed to AWS Lambda in seconds with Up.

You’ll be creating a `/time <url>` command used to check how long a website takes to respond. Up uses your own AWS account. You can host a large number of custom apps for free while still utilizing the AWS free tier (1 million requests/m).

Check out the installation instructions as well if you’re new to Up.

Registering the Slack command

The first step is to create a Slack app, allowing you to register commands, among other things.

Image for post
Image for post

Once created, click “Slash commands” in the menu on the left, and register the /time command. You’ll need to keep this page open for a minute since we need a Request URL so Slack knows where to send requests. …


Hello! This is the next release of Apex Up, a tool for deploying serverless apps and apis written in Golang, Node.js, Python or others in seconds to your own AWS infrastructure.

If this is the first time hearing about it, you may want to check out the Introduction blog post first.

This version introduces some necessary features for real production applications, such as modifying resources, because things change :), let’s take a look!

Cost metrics

A small but nice addition is cost metrics for your application, calculating how much was spent on the HTTP requests, Lambda invocations, and Lambda duration, which all contribute to the total cost. …


Image for post
Image for post

Last year I wrote Blueprints for Up, describing how most of the building blocks are available to create a great serverless experience on AWS with minimal effort. This post talks about the initial alpha release of Up.

Why focus on serverless? For starters it’s cost-effective since you pay on-demand, only for what you use. Serverless options are self-healing, as each request is isolated and considered to be “stateless.” And finally it scales indefinitely with ease — there are no machines or clusters to manage. Deploy your code and you’re done.

Roughly a month ago I decided to start working on it over at apex/up, and wrote the first small serverless sample application tj/gh-polls for live SVG GitHub user polls. It worked well and costs less than $1/month to serve millions of polls, so I thought I’d go ahead with the project and see if I can offer open-source and commercial variants. …

About

TJ Holowaychuk

Code. Photography. Art.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store