Github user kirklund commented on a diff in the pull request:

    https://github.com/apache/geode/pull/720#discussion_r134004793
  
    --- Diff: 
geode-core/src/main/java/org/apache/geode/management/FunctionStatsMXBean.java 
---
    @@ -0,0 +1,54 @@
    +/*
    + * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
    + * agreements. See the NOTICE file distributed with this work for 
additional information regarding
    + * copyright ownership. The ASF licenses this file to You under the Apache 
License, Version 2.0 (the
    + * "License"); you may not use this file except in compliance with the 
License. You may obtain a
    + * copy of the License at
    + *
    + * http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * Unless required by applicable law or agreed to in writing, software 
distributed under the License
    + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF 
ANY KIND, either express
    + * or implied. See the License for the specific language governing 
permissions and limitations under
    + * the License.
    + */
    +package org.apache.geode.management;
    +
    +import org.apache.geode.cache.asyncqueue.AsyncEventQueue;
    +import org.apache.geode.management.internal.security.ResourceOperation;
    +import org.apache.geode.security.ResourcePermission.Operation;
    +import org.apache.geode.security.ResourcePermission.Resource;
    +
    +/**
    + * MBean that provides access to an {@link AsyncEventQueue}.
    + * 
    + * @since GemFire 7.0
    + * 
    + */
    +@ResourceOperation(resource = Resource.CLUSTER, operation = Operation.READ)
    +public interface FunctionStatsMXBean {
    --- End diff --
    
    The design of this MBean doesn't fit in with the other Geode MBeans. We are 
not creating "stats" mbeans, we are creating mbeans for components in Geode. 
Example: we have a CacheServerMXBean and some of the attributes on that mbean 
are CacheServer stats.
    
    I would recommend writing up some sort of proposal for adding a new 
FunctionService mbean on the Apache Geode wiki and then starting a discussion 
about this on the dev list. However, I should note that we've purposely avoided 
fine-grained mbeans, preferring overall mbeans such as FunctionServiceMXBean 
instead of having an mbean per Function. The same issue came up with Clients 
and Geode dev community decided that having an mbean per Client was NOT the 
direction we wanted to go in -- you may be going down a similar path here.
    
    At present, the Cache and Function service are both squashed on the 
MemberMXBean which is why there is no separate mbean for Function service.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to