Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Functionbeat] Index multiple individual events from Kinesis events array #12442

Closed
bczifra opened this issue Jun 5, 2019 · 7 comments
Closed
Labels
enhancement Functionbeat needs_team Indicates that the issue/PR needs a Team:* label Stalled

Comments

@bczifra
Copy link
Member

bczifra commented Jun 5, 2019

Describe the enhancement:
Kinesis batches events together into a single array of events. These might look like this:

{
    "owner": "111111111111",
    "logGroup": "CloudTrail",
    "logStream": "111111111111_CloudTrail_us-east-1",
    "subscriptionFilters": [
        "RecipientStream"
    ],
    "messageType": "DATA_MESSAGE",
    "logEvents": [
        {
            "id": "3195310660696698337880902507980421114328961542429EXAMPLE",
            "timestamp": 1432826855000,
            "message": "{\"eventVersion\":\"1.03\",\"userIdentity\":{\"type\":\"Root\"}"
        },
        {
            "id": "3195310660696698337880902507980421114328961542429EXAMPLE",
            "timestamp": 1432826855000,
            "message": "{\"eventVersion\":\"1.03\",\"userIdentity\":{\"type\":\"Root\"}"
        },
        {
            "id": "3195310660696698337880902507980421114328961542429EXAMPLE",
            "timestamp": 1432826855000,
            "message": "{\"eventVersion\":\"1.03\",\"userIdentity\":{\"type\":\"Root\"}"
        }
    ]
}

This enhancement request is to introduce functionality to allow Functionbeat to output each of the entries in the array as individual, separate events. That is, this single source event from Kinesis should generate three separate events that could then be JSON parsed and sent to Elasticsearch for processing.

Describe a specific use case for the enhancement or feature:
One example of when this would be useful is for parsing Cloudwatch logs, as shown in the example JSON above. Though Functionbeat does have a cloudwatch function, there may be times where it doesn't have direct access to Cloudwatch but does have access to a Kinesis stream.

@acchen97
Copy link

acchen97 commented Jun 6, 2019

@bczifra thanks for filing! I'd like to confirm here, is this Cloudwatch or Cloudtrail data?

@bczifra
Copy link
Member Author

bczifra commented Jun 6, 2019

@acchen97 Cloudwatch

@Inbloo
Copy link

Inbloo commented Aug 1, 2019

Same problem here. Is someone working on this? Any workarround?

@ppf2
Copy link
Member

ppf2 commented Apr 21, 2020

This should be resolved in #13317 (thx!). However, we still have an outstanding task to update the documentation, and backport to the version when we first added this function to include information on this new function and to mark it as experimental (for now). @dedemorton

@dedemorton
Copy link
Contributor

Hi my apologies for missing this notification (it's been awhile). I've created an issue here to track the doc addition: #20042

@botelastic
Copy link

botelastic bot commented Jun 18, 2021

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@botelastic botelastic bot added Stalled needs_team Indicates that the issue/PR needs a Team:* label labels Jun 18, 2021
@botelastic
Copy link

botelastic bot commented Jun 18, 2021

This issue doesn't have a Team:<team> label.

@botelastic botelastic bot closed this as completed Jul 18, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Functionbeat needs_team Indicates that the issue/PR needs a Team:* label Stalled
Projects
None yet
Development

No branches or pull requests

5 participants