belrald-audit-logs
TypeScript icon, indicating that this package has built-in type declarations

1.0.3 • Public • Published

@belraldhq/audit-logs

Track and Record API Request and Response Logs

GitHub GitHub release (latest by date) npm

Table of Contents

Installation

Install the package using npm:

npm install belrald-audit-logs
yarn add belrald-audit-logs

Usage

getUserIpAddress

Function to get the user's IP address from the ipify API.

import { getUserIpAddress } from "belrald-audit-logs";

async function main() {
  try {
    const userIp = await getUserIpAddress();
    console.log("User IP Address:", userIp);
  } catch (error) {
    console.error("Error:", error);
  }
}

main();

createS3Client

Function to initialize an AWS S3 client.

import { createS3Client } from "belrald-audit-logs";

const config = {
  accessKeyId: "YOUR_ACCESS_KEY_ID",
  secretAccessKey: "YOUR_SECRET_ACCESS_KEY",
  region: "YOUR_REGION",
};

const s3Client = createS3Client(config);

logUserActivity

Middleware for logging user actions and uploading logs to an S3 bucket.

import express from "express";
import { logUserActivity, createS3Client } from "belrald-audit-logs";

const app = express();

const awsConfig = {
  accessKeyId: "YOUR_ACCESS_KEY_ID",
  secretAccessKey: "YOUR_SECRET_ACCESS_KEY",
  region: "YOUR_REGION",
  bucket: "YOUR_BUCKET_NAME",
};

app.use(function (req: Request, res: Response, next: NextFunction) { logUserActivity(req, res, next, config, bucket) });

fetchLogsForOrganization

Function to fetch logs for a specific organization from an S3 bucket.

import { fetchLogsForOrganization, createS3Client } from "belrald-audit-logs";

const s3Client = createS3Client({
  accessKeyId: "YOUR_ACCESS_KEY_ID",
  secretAccessKey: "YOUR_SECRET_ACCESS_KEY",
  region: "YOUR_REGION",
});

const bucketName = "YOUR_BUCKET_NAME";

async function main() {
  const logs = await fetchLogsForOrganization(s3Client, bucketName);
  console.log("Organization Logs:", logs);
}

main();

Types

This package provides various TypeScript types for the functions and configurations. You can refer to the Types section in the source code.

Contributing

Contributions are welcome! Please read our Contribution Guidelines for details.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Readme

Keywords

none

Package Sidebar

Install

npm i belrald-audit-logs

Weekly Downloads

44

Version

1.0.3

License

MIT

Unpacked Size

125 kB

Total Files

42

Last publish

Collaborators

  • tobbyano1234