Concepts de Azure Event GridConcepts in Azure Event Grid

En este artículo se describen los principales conceptos de Azure Event Grid.This article describes the main concepts in Azure Event Grid.

EventosEvents

Una evento es la cantidad mínima de información que describe completamente algo que se ha producido en el sistema.An event is the smallest amount of information that fully describes something that happened in the system. Todos los eventos tienen información común, como: origen del evento, hora en que el evento ha tenido lugar e identificador único.Every event has common information like: source of the event, time the event took place, and unique identifier. Cada evento tiene además información específica que solo es relevante para el tipo de evento concreto.Every event also has specific information that is only relevant to the specific type of event. Por ejemplo, un evento sobre un nuevo archivo que se crea en Azure Storage contiene detalles sobre el archivo, como el valor lastTimeModified.For example, an event about a new file being created in Azure Storage has details about the file, such as the lastTimeModified value. O bien, un evento de Event Hubs tiene la dirección URL del archivo de captura.Or, an Event Hubs event has the URL of the Capture file.

Un evento de tamaño de hasta 64 KB se tratan por acuerdo de nivel de servicio (SLA) de disponibilidad General (GA).An event of size up to 64 KB is covered by General Availability (GA) Service Level Agreement (SLA). El soporte técnico para un evento de tamaño de hasta 1 MB está actualmente en versión preliminar.The support for an event of size up to 1 MB is currently in preview. Eventos de más de 64 KB se cobran en incrementos de 64 KB.Events over 64 KB are charged in 64-KB increments.

Para obtener las propiedades que se envían en un evento, vea Esquema de eventos de Azure Event Grid.For the properties that are sent in an event, see Azure Event Grid event schema.

PublicadoresPublishers

Un publicador es el usuario o la organización que decide enviar eventos a Event Grid.A publisher is the user or organization that decides to send events to Event Grid. Microsoft publica eventos para varios servicios de Azure.Microsoft publishes events for several Azure services. Puede publicar eventos desde su propia aplicación.You can publish events from your own application. Las organizaciones que hospedan servicios fuera de Azure pueden publicar eventos a través de Event Grid.Organizations that host services outside of Azure can publish events through Event Grid.

Orígenes de eventosEvent sources

Un origen de evento es donde se produce el evento.An event source is where the event happens. Cada origen de evento está relacionado con uno o más tipos de eventos.Each event source is related to one or more event types. Por ejemplo, Azure Storage es el origen de evento de los eventos creados por blob.For example, Azure Storage is the event source for blob created events. IoT Hub es el origen de evento de los eventos creados por dispositivo.IoT Hub is the event source for device created events. La aplicación es el origen de evento de los eventos personalizados que defina.Your application is the event source for custom events that you define. Los orígenes de evento son responsables de enviar eventos a Event Grid.Event sources are responsible for sending events to Event Grid.

Para información sobre la implementación de cualquiera de los orígenes de Event Grid admitidos, consulte Event sources in Azure Event Grid (Orígenes de eventos en Azure Event Grid).For information about implementing any of the supported Event Grid sources, see Event sources in Azure Event Grid.

TemasTopics

En el tema de Event Grid se proporciona un punto de conexión al que el origen envía los eventos.The event grid topic provides an endpoint where the source sends events. El publicador crea el tema de Event Grid y decide si un origen de evento necesita un tema o más de un tema.The publisher creates the event grid topic, and decides whether an event source needs one topic or more than one topic. Un tema se usa para una colección de eventos relacionados.A topic is used for a collection of related events. Para responder a determinados tipos de eventos, los suscriptores deciden los temas a los que se suscriben.To respond to certain types of events, subscribers decide which topics to subscribe to.

Los temas del sistema son temas integrados que ofrecen los servicios de Azure.System topics are built-in topics provided by Azure services. No ve los temas del sistema en la suscripción de Azure porque el publicador posee los temas, pero puede suscribirse a ellos.You don't see system topics in your Azure subscription because the publisher owns the topics, but you can subscribe to them. Para suscribirse, proporciona información sobre el recurso del que quiere recibir eventos.To subscribe, you provide information about the resource you want to receive events from. Siempre que tengan acceso al recurso, puede suscribirse a sus eventos.As long as you have access to the resource, you can subscribe to its events.

Los temas personalizados son temas de terceros y de aplicación.Custom topics are application and third-party topics. Cuando cree un tema personalizado, o se le asigne acceso al mismo, verá ese tema personalizado en su suscripción.When you create or are assigned access to a custom topic, you see that custom topic in your subscription.

Cuando diseñe la aplicación, tiene flexibilidad al decidir cuántos temas se crean.When designing your application, you have flexibility when deciding how many topics to create. Para soluciones grandes, cree un tema personalizado para cada categoría de eventos relacionados.For large solutions, create a custom topic for each category of related events. Por ejemplo, considere una aplicación que envía eventos relacionados con la modificación de las cuentas de usuario y el procesamiento de pedidos.For example, consider an application that sends events related to modifying user accounts and processing orders. Es poco probable que algún controlador de eventos quiera ambas categorías de eventos.It's unlikely any event handler wants both categories of events. Cree dos temas personalizados y deje que los controladores de eventos se suscriban a uno que les interese.Create two custom topics and let event handlers subscribe to the one that interests them. Para soluciones pequeñas, puede que prefiera enviar todos los eventos a un solo tema.For small solutions, you might prefer to send all events to a single topic. Los suscriptores de eventos se pueden filtrar por los tipos de evento que desean.Event subscribers can filter for the event types they want.

Suscripciones a eventosEvent subscriptions

Las suscripciones le indican a Event Grid qué eventos de un tema les interesa recibir.A subscription tells Event Grid which events on a topic you're interested in receiving. Al crear la suscripción, proporciona un punto de conexión para controlar el evento.When creating the subscription, you provide an endpoint for handling the event. Puede filtrar los eventos que se envían al punto de conexión.You can filter the events that are sent to the endpoint. Puede filtrar por tipo de evento o por patrón de asunto.You can filter by event type, or subject pattern. Para más información, vea Esquema de suscripción de Event Grid.For more information, see Event Grid subscription schema.

Para obtener ejemplos de creación de suscripciones, vea:For examples of creating subscriptions, see:

Para obtener información sobre las suscripciones de Event Grid actuales, vea Consulta de suscripciones de Event Grid.For information about getting your current event grid subscriptions, see Query Event Grid subscriptions.

Caducidad de la suscripción de eventosEvent subscription expiration

La suscripción de eventos expira automáticamente después de esa fecha.The event subscription is automatically expired after that date. Establezca una fecha de expiración para las suscripciones de eventos que solamente son necesarias durante un tiempo limitado y de cuya limpieza no quiere preocuparse.Set an expiration for event subscriptions that are only needed for a limited time and you don't want to worry about cleaning up those subscriptions. Por ejemplo, es posible que, al crear una suscripción de eventos para probar un escenario, desee establecer una fecha de expiración.For example, when creating an event subscription to test a scenario, you might want to set an expiration.

Para ver un ejemplo acerca de cómo se establece una fecha de expiración, consulte Suscripción con filtros avanzados.For an example of setting an expiration, see Subscribe with advanced filters.

Controladores de eventosEvent handlers

Desde la perspectiva de Event Grid, un controlador de eventos es el lugar al que se envía el evento.From an Event Grid perspective, an event handler is the place where the event is sent. El controlador realiza alguna acción adicional para procesar el evento.The handler takes some further action to process the event. Event Grid admite varios tipos de controladores.Event Grid supports several handler types. Puede usar un servicio de Azure admitido o su propio webhook como controlador.You can use a supported Azure service or your own webhook as the handler. Según el tipo de controlador, Event Grid sigue distintos procedimientos para garantizar la entrega del evento.Depending on the type of handler, Event Grid follows different mechanisms to guarantee the delivery of the event. En el caso de los controladores de eventos de webhook HTTP, el evento se reintenta hasta que el controlador devuelve un código de estado de 200 – OK.For HTTP webhook event handlers, the event is retried until the handler returns a status code of 200 – OK. En Azure Storage Queue, los eventos se reintentan hasta que Queue service procesa correctamente la inserción de mensajes en la cola.For Azure Storage Queue, the events are retried until the Queue service successfully processes the message push into the queue.

Para información sobre cómo implementar cualquiera de los controladores admitidos de Event Grid, consulte Event handlers in Azure Event Grid (Controladores de eventos en Azure Event Grid).For information about implementing any of the supported Event Grid handlers, see Event handlers in Azure Event Grid.

SeguridadSecurity

Event Grid proporciona seguridad para suscribirse a temas y publicarlos.Event Grid provides security for subscribing to topics, and publishing topics. Para suscribirse, debe tener los permisos adecuados en el recurso o el tema de Event Grid.When subscribing, you must have adequate permissions on the resource or event grid topic. Para publicar, debe tener un token de SAS o autenticación de clave para el tema.When publishing, you must have a SAS token or key authentication for the topic. Para más información, vea Event Grid security and authentication (Seguridad y autenticación de Event Grid).For more information, see Event Grid security and authentication.

Entrega de eventosEvent delivery

Si Event Grid no puede confirmar que un evento se ha recibido en el punto de conexión del suscriptor, vuelve a entregarlo.If Event Grid can't confirm that an event has been received by the subscriber's endpoint, it redelivers the event. Para más información, vea Entrega y reintento de entrega de mensajes de Event Grid.For more information, see Event Grid message delivery and retry.

LotesBatching

Cuando se usa un tema personalizado, los eventos siempre se deben publicar en una matriz.When using a custom topic, events must always be published in an array. En los escenarios de bajo rendimiento, puede utilizarse un lote con un único evento; sin embargo, en los casos de uso de gran volumen, se recomienda agrupar varios eventos en cada publicación para lograr una mayor eficacia.This can be a batch of one for low-throughput scenarios, however, for high volume use cases, it's recommended that you batch several events together per publish to achieve higher efficiency. Los lotes pueden tener hasta 1 MB.Batches can be up to 1 MB. Cada evento todavía no debe superior a 64 KB (Disponibilidad General) o 1 MB (versión preliminar).Each event should still not be greater than 64 KB (General Availability) or 1 MB (preview).

Nota

Un evento de tamaño de hasta 64 KB se tratan por acuerdo de nivel de servicio (SLA) de disponibilidad General (GA).An event of size up to 64 KB is covered by General Availability (GA) Service Level Agreement (SLA). El soporte técnico para un evento de tamaño de hasta 1 MB está actualmente en versión preliminar.The support for an event of size up to 1 MB is currently in preview. Eventos de más de 64 KB se cobran en incrementos de 64 KB.Events over 64 KB are charged in 64 KB increments.

Pasos siguientesNext steps