Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
rethinkdb-elasticsearch-stream
Advanced tools
> 🔄 sync RethinkDB tables to Elasticsearch using [changefeeds](https://rethinkdb.com/docs/changefeeds/javascript/)
🔄 sync RethinkDB tables to Elasticsearch using changefeeds
A JavaScript-based replacement for the deprecated Elasticsearch RethinkDB River plugin. This can populate your Elasticsearch instance using data from a RethinkDB instance, keep it up to date using changefeeds, and allow you to modify the documents before they're copied.
✨ Features:
Simple example:
import rethinkdbElasticsearchStream from 'rethinkdb-elasticsearch-stream'
await rethinkdbElasticsearchStream({
backfill: true,
elasticsearch: { host: '127.0.0.1', port: 9200 },
rethinkdb: { host: '127.0.0.1', port: 28015 },
tables: [{ db: 'megacorp', table: 'users' }],
watch: true
});
Everything:
import rethinkdbElasticsearchStream from 'rethinkdb-elasticsearch-stream'
await rethinkdbElasticsearchStream({
// If the Elasticsearch instance should be populated with existing RethinkDB data
backfill: true,
// Connection details for an Elasticsearch instance
elasticsearch: { host: '127.0.0.1', port: 9200 },
// Connection details for the RethinkDB instance to be copied
// See `rethinkdbdash` (https://github.com/neumino/rethinkdbdash) for all possible options.
rethinkdb: { host: '127.0.0.1', port: 28015 },
// Tables to duplicate and watch for changes
tables: [
{
// Database containing table
db: 'megacorp',
// (optional) ID field. If specified, changes are upserted into Elasticsearch
// Note: Elasticsearch-specific field names cannot be used (e.g. `_id`)
// If that's important to you, open an issue.
idKey: 'id',
// Table to copy
table: 'users',
// (optional) Modify what will be saved in Elasticsearch.
// This can be either a function or a Promise.
// If `null` or `undefined` is returned, the document is not saved.
// `db` and `table` are specified for convenience
transform: async ({ db, document, table }) => {
await doSomethingImportant()
return document
}
}
],
// If the Elasticsearch instance should be updated when RethinkDB emits a changefeed event
watch: true
});
With Yarn or npm installed, run:
yarn add rethinkdb-elasticsearch-stream
# ...or, if using `npm`
npm install rethinkdb-elasticsearch-stream
rethinkdb-elasticsearch-stream was inspired by:
MIT
FAQs
> 🔄 sync RethinkDB tables to Elasticsearch using [changefeeds](https://rethinkdb.com/docs/changefeeds/javascript/)
The npm package rethinkdb-elasticsearch-stream receives a total of 19 weekly downloads. As such, rethinkdb-elasticsearch-stream popularity was classified as not popular.
We found that rethinkdb-elasticsearch-stream demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 15 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.