PHPackages                             logsmith/log-flume - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. logsmith/log-flume

ActiveWordpress-plugin

logsmith/log-flume
==================

Log Flume

1.1.0(7y ago)56.0k[2 issues](https://github.com/logsmith/log-flume/issues)PHP

Since Mar 13Pushed 7y ago3 watchersCompare

[ Source](https://github.com/logsmith/log-flume)[ Packagist](https://packagist.org/packages/logsmith/log-flume)[ Docs](http://www.atomicsmash.co.uk/)[ RSS](/packages/logsmith-log-flume/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (1)Versions (22)Used By (0)

[![log-flume-logo](https://cloud.githubusercontent.com/assets/1636310/24171665/407f51a2-0e7d-11e7-974f-f80e0c45e1ed.jpg)](https://cloud.githubusercontent.com/assets/1636310/24171665/407f51a2-0e7d-11e7-974f-f80e0c45e1ed.jpg)

This allows developers to sync WordPress media libraries between machines over Amazon S3.

It can also be used for backing up websites or even moving websites between servers

### How Log Flume talks to S3

[](#how-log-flume-talks-to-s3)

The setup will ask you to add these constants to your wp-config.php file:

- LOG\_FLUME\_REGION
- LOG\_FLUME\_ACCESS\_KEY\_ID
- LOG\_FLUME\_SECRET\_ACCESS\_KEY

You can obtain these details by creating an IAM user. Here is [our guide](https://github.com/logsmith/log-flume/wiki/Getting-AWS-credentials) on how to setup an IAM Amazon user and get the access and secret key that you need.

Installation
------------

[](#installation)

#### 1. Add the Wordpress plugin to your composer file by navigating to your project and running this inside a terminal:

[](#1-add-the-wordpress-plugin-to-your-composer-file-by-navigating-to-your-project-and-running-this-inside-a-terminal)

```
composer require logsmith/log-flume

```

#### 2. Activate the plugin via the admin interface, or just run:

[](#2-activate-the-plugin-via-the-admin-interface-or-just-run)

```
wp plugin activate log-flume

```

#### 3. Add your credentials to your wp-config file.

[](#3-add-your-credentials-to-your-wp-config-file)

And these constants to your wp-config file:

```
define('LOG_FLUME_REGION','eu-west-2'); //London
define('LOG_FLUME_ACCESS_KEY_ID','');
define('LOG_FLUME_SECRET_ACCESS_KEY','');

```

#### 4. Then finally run (you will need the constants above):

[](#4-then-finally-run-you-will-need-the-constants-above)

```
wp logflume check_credentials

```

#### 5. If the check is successful, you can start the log flume setup:

[](#5-if-the-check-is-successful-you-can-start-the-log-flume-setup)

```
wp logflume create_bucket

```

`bucket_name` is usually the address of the site you are currently working on ('website.local')

You will also be asked `Create bucket? [y/n]` - supply 'y' if this is a fresh setup. Select N to not do that.

#### 6. Time to sync!

[](#6-time-to-sync)

```
wp logflume sync

```

Bucket name is usually the address of the site you are currently using

Using log-flume to backup a live website
----------------------------------------

[](#using-log-flume-to-backup-a-live-website)

Log-flume can be used to backup a live site as well as sync development assets.

#### 1. Install and setup log-flume

[](#1-install-and-setup-log-flume)

Get log-flume running on local version of the site (using the 'Installation' guide above).

#### 2. Log into the live env

[](#2-log-into-the-live-env)

SSH into the live environment and navigate to your WordPress installation.

#### 3. Check local credential work in live env

[](#3-check-local-credential-work-in-live-env)

```
wp logflume check_credentials

```

Run to find any issues.

#### 4. Setup a bucket for the live env

[](#4-setup-a-bucket-for-the-live-env)

It's always good to separate the dev and live environments.

```
wp logflume create_bucket

```

Create a fresh bucket with the live URL as the bucket name. For example:

```
wp logflume create_bucket atomicsmash.co.uk

```

#### 5. Setup auto-deletion of SQL files

[](#5-setup-auto-deletion-of-sql-files)

Depending on how often you run this command, the SQL files will start to build up quickly. You can setup an S3 folder lifecycle to auto-delete files older than X number of days.

```
wp logflume autodelete_sql

```

We usually usually retain backups for 30 days:

```
wp logflume autodelete_sql 30

```

#### 6. Setting up auto-backup (cron job)

[](#6-setting-up-auto-backup-cron-job)

To get the backup command to run on a regular basis, you need to setup a cron job. Use something similar to this:

```
/usr/local/bin/wp logflume backup_wordpress --path=/path/to/www.website.co.uk/

```

If you are using composer in your project then your WordPress core files might be inside a subfolder, please modify the path to reflect this. If WordPress lives inside "/wp/" then the cron job would look like this:

```
/usr/local/bin/wp logflume backup_wordpress --path=/path/to/www.website.co.uk/wp

```

If you are using forge, then simply add to the server scheduling panel:

[![forge-schedule](https://user-images.githubusercontent.com/1636310/40587898-73fcbca0-61cd-11e8-8317-f1d24645bee5.png)](https://user-images.githubusercontent.com/1636310/40587898-73fcbca0-61cd-11e8-8317-f1d24645bee5.png)

Functions
---------

[](#functions)

**logflume sync \[--direction=\]**

> This function runs `sync` **and** a DB backup.

**logflume backup\_wordpress**

> This function runs `sync` **and** a DB backup.

**logflume create\_bucket &lt;bucket\_name&gt;**

> Created the required bucket and bucket settings for handling media on S3. It's good to use the current hostname.

**logflume select\_bucket &lt;bucket\_name&gt;**

> Use this to change the bucket that log-flume is currently sync to.

**logflume check\_credentials**

> Performs a simple S3 function to make sure it can access the selected bucket

**logflume autodelete\_sql**

> Setup a S3 lifecycle to auto-delete from the SQL folder after a number of days.

Troubleshooting
---------------

[](#troubleshooting)

Are you receiving an error similar to `PHP Fatal error:  Uncaught Error: Class 'Aws\S3\S3Client' not found in /path/to/file`

Make sure you are requiring your autoload.php generated by composer. We usually add this to the top of our wp-config file:

```
require( dirname( __FILE__ ) . '/vendor/autoload.php' );

```

###  Health Score

33

—

LowBetter than 75% of packages

Maintenance12

Infrequent updates — may be unmaintained

Popularity22

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity72

Established project with proven stability

 Bus Factor1

Top contributor holds 99% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~23 days

Recently: every ~33 days

Total

20

Last Release

2912d ago

Major Versions

0.0.15 → 1.0.02018-01-05

### Community

Maintainers

![](https://www.gravatar.com/avatar/9b0dcfc10de07172559aa1eeb31aca8758615929f9890b391bd9048d0f0b53a4?d=identicon)[logsmith](/maintainers/logsmith)

---

Top Contributors

[![daviddarke](https://avatars.githubusercontent.com/u/1636310?v=4)](https://github.com/daviddarke "daviddarke (100 commits)")[![anthonyhartnell](https://avatars.githubusercontent.com/u/4340088?v=4)](https://github.com/anthonyhartnell "anthonyhartnell (1 commits)")

---

Tags

aws-credss3s3-bucketsyncwordpresswordpress-developmentwordpress-pluginplugindevwordpress

### Embed Badge

![Health badge](/badges/logsmith-log-flume/health.svg)

```
[![Health](https://phpackages.com/badges/logsmith-log-flume/health.svg)](https://phpackages.com/packages/logsmith-log-flume)
```

###  Alternatives

[sybrew/the-seo-framework

An automated, advanced, accessible, unbranded and extremely fast SEO solution for any WordPress website.

47078.8k](/packages/sybrew-the-seo-framework)[afragen/git-updater

A plugin to automatically update GitHub, Bitbucket, GitLab, or Gitea hosted plugins, themes, and language packs.

3.3k1.6k](/packages/afragen-git-updater)[webdevstudios/cmb2-attached-posts

Custom field for CMB2 for creating post relationships.

13565.5k](/packages/webdevstudios-cmb2-attached-posts)[atomicsmash/acf-limiter-field

Advanced Custom Fields: Limiter Field

112.8k](/packages/atomicsmash-acf-limiter-field)[alleyinteractive/pest-plugin-wordpress

WordPress Pest Integration

263.7k1](/packages/alleyinteractive-pest-plugin-wordpress)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
