AWS S3 Sync



  • We are looking to set up JS Report on Elastic Beanstalk AWS and are having some issues getting the server sync to work across instances.

    The S3 bucket is getting populated with the changes made, but I don't see any subscriptions being created in AWS, nor are the changes propagating to other instances until they are restarted.

    Below is my config.json. Any insights as to what may be incorrectly configured?

    {
      "store": {
        "provider": "fs"
      },
      "blobStorage": {
        "provider": "fs"
      },
      "logger": {
        "console": {
          "transport": "console",
          "level": "debug"
        },
        "file": {
          "transport": "file",
          "level": "info",
          "filename": "logs/reporter.log"
        },
        "error": {
          "transport": "file",
          "level": "error",
          "filename": "logs/error.log"
        }
      },
      "allowLocalFilesAccess": true,
      "reportTimeout": 60000,
      "templatingEngines": {
        "strategy": "http-server"
      },
      "extensions": {
        "authentication": {
          "cookieSession": {
            "secret": "XXX"
          },
          "authorizationServer": {
            "tokenValidation": {
              "endpoint": "http://localhost:5000/auth",
              "timeout": 180000,
              "sendAsJSON": true,
              "hint": null,
              "usernameField": "username",
              "activeField": "active",
              "auth": false
            }
          },
          "admin": {
            "username": "admin",
            "password": "XXX"
          },
          "enabled": true
        },
        "fs-store": {
          "persistence": {
            "provider": "aws-s3",
            "sync": {
              "provider": "aws-sns"
            }
          }
        },
        "fs-store-aws-s3-persistence": {
          "accessKeyId": "XXX",
          "secretAccessKey": "XXX",
          "bucket": "online-reports",
          "lock": {
            "queueName": "jsreport-lock.fifo"
          }
        },
        "fs-store-aws-sns-sync": {
          "accessKeyId": "XXX",
          "secretAccessKey": "XXX"
        },
        "express": {
          "exposeHttpHeaders": true
        },
        "child-templates": {
          "parallelLimit": 10
        },
        "sample-template": {
          "createSamples": true
        },
        "scripts": {
          "allowedModules": "*",
          "strategy": "http-server"
        }
      }
    }
    
    


  • This is the issue....

    ...
     "fs-store": {
          "persistence": {
            "provider": "aws-s3",
            "sync": {
              "provider": "aws-sns"
            }
          }
    }...
    

    The sync property should be the persistence property sibling.

    "fs-store": {
        "persistence": {
           "provider": "aws-s3"
        },
        "sync": {
          "provider": "aws-sns"
        }
    },
    


  • Thank you so much!


Log in to reply
 

Looks like your connection to jsreport forum was lost, please wait while we try to reconnect.