'Create a \'comment\' event for event-collector.
new_comment: An r2.models.Comment object
request, context: Should be pylons.request & pylons.c respectively'

@squelch_exceptions
@sampled('events_collector_comment_sample_rate')
def comment_event(self, new_comment, request=None, context=None):

    from r2.models import Comment, Link
    event = Event(topic='comment_events', event_type='ss.comment', time=new_comment._date, request=request, context=context, truncatable_field='comment_body')
    event.add('comment_id', new_comment._id)
    event.add('comment_fullname', new_comment._fullname)
    event.add_text('comment_body', new_comment.body)
    post = Link._byID(new_comment.link_id)
    event.add('post_id', post._id)
    event.add('post_fullname', post._fullname)
    event.add('post_created_ts', to_epoch_milliseconds(post._date))
    if post.promoted:
        event.add('post_is_promoted', bool(post.promoted))
    if new_comment.parent_id:
        parent = Comment._byID(new_comment.parent_id)
    else:
        parent = post
    event.add('parent_id', parent._id)
    event.add('parent_fullname', parent._fullname)
    event.add('parent_created_ts', to_epoch_milliseconds(parent._date))
    event.add('user_neutered', new_comment.author_slow._spam)
    event.add_subreddit_fields(new_comment.subreddit_slow)
    self.save_event(event)
